52°North SPS v2.0 - Design Documentation
The 52°North SPS 2.0 reference implementation follows a loosely coupled design. The API
defines interfaces and central management logic to glue together every component implementing SPS interfaces.
An incoming service request is delegated to the
interface. It is an interface aggregating operational capabilities of the configured SPS modules. Each incoming request is delegated to this interface from the Webapp
module which serves as frontend to the SPS and provides actual service bindings (plain old xml, SOAP, etc.). For now, plain old xml is supported only, but the design allows extending new service bindings with less efforts.
module provides implementations of the mandatory SPS interfaces provided by the API
, i.e. BasicSensorPlanner and SensorProvider. Each implementation makes use of an
which provides access to the SPS framework. The SPS is designed modular and can be extended by further modules to enable functionality (e.g. cancelling or updating tasks). Because of the loosely coupled and dynamic design, a running SPS does not have to be recompiled if new modules are available. Declaration of available modules within the SPS configuration is sufficient.
52°North SPS 2.0 reference implementation provides central sensor and corresponding task management. It is designed to keep task and sensor instance management within the SPS framework so that sensor plugin developers can focus on implementing plugin logic.
Implementing a plugin for a concrete sensor type requires implementing the
interfaces. While the
implementation is only a mean for the
to create sensor instances for a concrete (sensor) plugin type, the
class provides access to task storage management and the sensor's sensor configuration.