The JEMMA software architecture is based on OSGi.
3rd-party applications can be plugged into JEMMA either locally (via OSGi declarative services) or on the Cloud, through its web-based RESTful APIs.
JEMMA uses a pom-first approach and leverages Apache Maven to handle dependencies, automate builds, etc.
The Java-GAL is an OSGi based ZigBee Gateway Abstraction Layer written in Java language. It implements the ZigBee Gateway Device specifications. Java-GAL is a core component for any OSGi and REST Home Automation application that requires to operate with a ZigBee hardware.
With a properly configured Java-GAL, the client developers don't need to be aware of the model of ZigBee hardware that will be used because the main feature of the Java-GAL is to translate the ZigBee product dependant low level APIs into a common J-GAL interface. Moreover, Java-GAL adds all the required features to perform active nodes discovery in order to keep a constantly updated image of the current ZigBee network. The structure of Java-GAL source code, allows the easy development of the required software modules for new Zigbee hardware interfaces, relying on a proper internal low-level interface.
The Java-GAL is a project copyright of Telecom Italia under the financial support of EIT ICT Labs activity SecSES - Secure Energy Systems (activity id 13030), the author of this software is Marco Nieddu of Consoft Sistemi.