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

      All Methods Instance Methods Abstract Methods 
      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 removedServices​(SessionToken session, K key)
      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 Detail

      • 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.