public class SharedServiceRegistryKF extends SimpleServiceRegistry implements SharedServiceRegistry, FeatureStateListener
This service registry is able to handle the following kind of services:
Proxy
 instancesservices| Constructor and Description | 
|---|
SharedServiceRegistryKF()
Creates a shared service registry. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
<T> T | 
getService(Class<T> serviceClass)
Gets the registered implementation for the given service. 
 | 
<T> void | 
register(Class<T> serviceClass,
        T implementation)
Registers a service instance. 
 | 
void | 
stateChanged(Feature feature,
            Feature.State previousState)
Called when the state of a Feature has changed. 
 | 
<T> void | 
unregister(Class<T> serviceClass,
          T implementation)
Unregisters a service instance. 
 | 
checkServicePermission, createAlternativeImplementation, putServicepublic SharedServiceRegistryKF()
@Nullable public <T> T getService(Class<T> serviceClass)
getService in interface ServiceLoadergetService in class SimpleServiceLoaderT - the service type.serviceClass - the service to found.null if no implementation is available.public <T> void register(Class<T> serviceClass, T implementation)
ServiceRegistry
 The given instance is returned each time the service is requested by ServiceLoader.getService(Class).
 
If the service already has a registered instance, the previous one is replaced.
register in interface ServiceRegistryregister in class SimpleServiceRegistryT - the service type.serviceClass - the implemented service.implementation - the service instance.public void stateChanged(@Nullable Feature feature, @Nullable Feature.State previousState)
FeatureStateListenerstateChanged in interface FeatureStateListenerfeature - the Feature which state has changedpreviousState - the previous state, null if Feature state is Feature.State.INSTALLEDpublic <T> void unregister(Class<T> serviceClass, T implementation)
ServiceRegistryIf the given instance is not the one currently registered for the given service, nothing is done.
unregister in interface ServiceRegistryunregister in class SimpleServiceRegistryT - the service type.serviceClass - the implemented service.implementation - the service instance.