Class DefaultServiceRegistry<T>

java.lang.Object
com.bc.ceres.core.DefaultServiceRegistry<T>
All Implemented Interfaces:
ServiceRegistry<T>

public class DefaultServiceRegistry<T> extends Object implements ServiceRegistry<T>
  • Constructor Details

    • DefaultServiceRegistry

      public DefaultServiceRegistry(Class<T> serviceType)
  • Method Details

    • getServiceType

      public Class<T> getServiceType()
      Gets the service type. All services in this registry are instances of this type.
      Specified by:
      getServiceType in interface ServiceRegistry<T>
      Returns:
      The service type.
    • getServices

      public Set<T> getServices()
      Gets all registered services.
      Specified by:
      getServices in interface ServiceRegistry<T>
      Returns:
      A set of all services.
    • getService

      public T getService(String className)
      Gets a registered service instance for the given class name.
      Specified by:
      getService in interface ServiceRegistry<T>
      Parameters:
      className - The name of the service's class.
      Returns:
      The service instance or null if no such exists.
    • addService

      public boolean addService(T service)
      Adds a new service to this registry. The method will automatically remove an already registered service of the same type. If the registry changes due to a call of this method, a change event will be fired.
      Specified by:
      addService in interface ServiceRegistry<T>
      Parameters:
      service - The service to be added.
      Returns:
      true if the service has been added.
    • removeService

      public boolean removeService(T service)
      Removes an existing service from this registry. If the registry changes due to a call of this method, a change event will be fired.
      Specified by:
      removeService in interface ServiceRegistry<T>
      Parameters:
      service - The service to be removed.
      Returns:
      true if the service has been removed.
    • getListeners

      public List<ServiceRegistryListener<T>> getListeners()
      Specified by:
      getListeners in interface ServiceRegistry<T>
      Returns:
      The list of registry listeners.
    • addListener

      public void addListener(ServiceRegistryListener<T> listener)
      Adds a new registry listener.
      Specified by:
      addListener in interface ServiceRegistry<T>
      Parameters:
      listener - The registry listener to be added.
    • removeListener

      public void removeListener(ServiceRegistryListener<T> listener)
      Removes an existing registry listener.
      Specified by:
      removeListener in interface ServiceRegistry<T>
      Parameters:
      listener - The registry listener to be removed.