Interface DynamicServiceRegistration.DynamicServiceNotification<K>

Type Parameters:
K - The key identifying a service type, i. e. a list of service instances.
Enclosing class:
DynamicServiceRegistration<K,S extends ADEPT2Service>

public static interface DynamicServiceRegistration.DynamicServiceNotification<K>
This interface provides the means for signalling adding, updating and removing services to users of the DynamicServiceRegistration. All methods are being called while holding the write lock on @link DynamicServiceRegistration.lock. So implementations should be rather short running and should avoid additional locks.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addedService(SessionToken session, K key, int index, URI[] uris, long contactTime)
    Notifies the adding of the designated service (URIs) for the designated key at the designated index of the corresponding service list.
    void
    removedService(SessionToken session, K key, int index, URI[] uris)
    Notifies the removal of the designated service (URIs) for the designated key at the designated index of the corresponding service list.
    void
    Notifies the removal of all registered services for the designated key.
    void
    updatedServiceContact(SessionToken session, K key, int index, URI[] uris, long contactTime)
    Notifies the updating of (the contact time of) the designated service for the designated key at the designated index of the corresponding service list.
  • Method Details

    • addedService

      void addedService(SessionToken session, K key, int index, URI[] uris, long contactTime)
      Notifies the adding of the designated service (URIs) for the designated key at the designated index of the corresponding service list.
      Parameters:
      session - The session token (or rather a child of it) with which the service has been added.
      key - The key for which the service has been added.
      index - The index of the service within the corresponding service list (of the designated key).
      uris - The URIs of the added service.
      contactTime - The last time the designated service has been contacted. 0 indicates that this service has not been contacted yet but just added.
    • updatedServiceContact

      void updatedServiceContact(SessionToken session, K key, int index, URI[] uris, long contactTime)
      Notifies the updating of (the contact time of) the designated service for the designated key at the designated index of the corresponding service list.
      Parameters:
      session - The session token (or rather a child of it) with which (the contact time of) the service has been updated.
      key - The key for which the service has been updated.
      index - The index of the service within the corresponding service list (of the designated key).
      uris - The URIs of the updated service.
      contactTime - The last time the designated service has been contacted.
    • removedService

      void removedService(SessionToken session, K key, int index, URI[] uris)
      Notifies the removal of the designated service (URIs) for the designated key at the designated index of the corresponding service list.
      Parameters:
      session - The session token (or rather a child of it) with which the service has been removed.
      key - The key for which the service has been removed.
      index - The index of the service within the corresponding service list (of the designated key).
      uris - The URIs of the removed service.
    • removedServices

      void removedServices(SessionToken session, K key)
      Notifies the removal of all registered services for the designated key.
      Parameters:
      session - The session token (or rather a child of it) with which the services have been removed.
      key - The key for which the services have been removed.