Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The Figure 4 shows a simplified component view of the base driver. The driver is composed of two components, the exporter and importer; both using the CyberDomo library, which is a modified version of the library released by the "CyberLink for Java" project, maintained by the Domoware project. The library implements a full UPnP stack. The base driver acts as a bridge between OSGi and the UPnP networks .

Figure 4 The UPnP Base Driver architecture

In order to instantiate UPnP devices, developers must register services implementing the interfaces represented in Figure 5 and provided by the org.osgi.compendium bundle. The exporter is registered as ServiceListener with the framework and it automatically exposes on the networks each UPnPDevice service registered with the registration property UPNP_EXPORT. The importer listens to the advertisements sent on the networks by external devices and registers with the framework one or more UPnPDevice services. Even if it is not required by the specification, the devices imported by the Felix base driver are labeled with the registration property UPNP_IMPORT.

Figure 5 The UPnP Device interfaces

...