Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Der Config Admin Service muss eine Konfiguration einer bestimmten Service-Instanz zuordnen können. Diese Zuordnung erfolgt über die sog. Persistent Identity (PID) eines Service:
Persistent Identity (PID): Die PID identifiziert einen Service und muss deshalb systemweit eindeutig sein (vgl. Abb. 13-4). Sie wird beim Registrieren eines Managed Service als Service Property angegeben. Der Name des Service Property, das die PID enthält, ist in der Konstante org.osgi.framework.Constants.SERVICE_PID festgelegt. Die PID können Sie frei wählen, allerdings muss die PID auch nach einem Neustart des Frameworks identisch bleiben, damit persistente Konfigurationen korrekt zugewiesen werden können.
Factory Persistent Identity (Factory PID): Bei der Registrierung einer Managed Service Factory verwendet der Config Admin Service die angegebene PID zur Identifizierung der Factory (die sog. Factory PID). Da jedoch über die Factory pro Konfiguration eine eigene Instanz eines konfigurierbaren Objektes erzeugt wird, muss diese Instanz eine eigene PID besitzen, wenn die Konfiguration nachträglich änderbar sein soll. Der Config Admin Service nutzt in diesem Fall die Factory PID als Präfix und generiert darauf aufbauend für jedes neu zu erzeugende konfigurierbare Objekt eine eigenen PID (vgl. Abb. 13-5).