Interface IRemoteServiceTrackerCustomizer
-
- All Known Implementing Classes:
RemoteServiceTracker
public interface IRemoteServiceTrackerCustomizer
TheIRemoteServiceTrackerCustomizer
interface allows aRemoteServiceTracker
object to customize the service objects that are tracked. TheIRemoteServiceTrackerCustomizer
object is called when a service is being added to theRemoteServiceTracker
object. TheIRemoteServiceTrackerCustomizer
can then return an object for the tracked service. TheIRemoteServiceTrackerCustomizer
object is also called when a tracked service is modified or has been removed from theRemoteServiceTracker
object.The methods in this interface may be called as the result of a
IRemoteServiceEvent
being received by aRemoteServiceTracker
object. SinceIRemoteServiceEvent
s are synchronously delivered by the Framework, it is highly recommended that implementations of these methods do not register (IRemoteServiceContainerAdapter.registerService
), modify (IRemoteServiceRegistration.setProperties
) or unregister (IRemoteServiceRegistration.unregister
) a service while being synchronized on any object.The
RemoteServiceTracker
class is thread-safe. It does not call aIRemoteServiceTrackerCustomizer
object while holding any locks.IRemoteServiceTrackerCustomizer
implementations must also be thread-safe.- Since:
- 3.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IRemoteService
addingService(IRemoteServiceReference reference)
A service is being added to theRemoteServiceTracker
object.void
modifiedService(IRemoteServiceReference reference, IRemoteService remoteService)
A remote service tracked by theRemoteServiceTracker
object has been modified.void
removedService(IRemoteServiceReference reference, IRemoteService remoteService)
A remote service tracked by theRemoteServiceTracker
object has been removed.
-
-
-
Method Detail
-
addingService
IRemoteService addingService(IRemoteServiceReference reference)
A service is being added to theRemoteServiceTracker
object.This method is called before a remote service which matched the search parameters of the
RemoteServiceTracker
object is added to it. This method should return the IRemoteServic object to be tracked for thisIRemoteServiceReference
object. The returned remote service object is stored in theRemoteServiceTracker
object and is available from thegetRemoteService
andgetRemoteServices
methods.- Parameters:
reference
- remote reference to remote service being added to theRemoteServiceTracker
object.- Returns:
- The remote service object to be tracked for the
IRemoteServiceReference
object ornull
if theIRemoteServiceReference
object should not be tracked.
-
modifiedService
void modifiedService(IRemoteServiceReference reference, IRemoteService remoteService)
A remote service tracked by theRemoteServiceTracker
object has been modified.This method is called when a remote service being tracked by the
RemoteServiceTracker
object has had it properties modified.- Parameters:
reference
- IRemoteServiceReference to service that has been modified.remoteService
- The remote service object for the modified remote service.
-
removedService
void removedService(IRemoteServiceReference reference, IRemoteService remoteService)
A remote service tracked by theRemoteServiceTracker
object has been removed.This method is called after a remote service is no longer being tracked by the
RemoteServiceTracker
object.- Parameters:
reference
- IRemoteServiceReference to remote service that has been removed.remoteService
- The service object for the removed service.
-
-