If a ServiceTracker
object is reused (closed then reopened), then a new Tracked object is used. This class is a hashtable mapping ServiceReference
object -> customized Object. This class is the ServiceListener
object for the tracker. This class is used to synchronize access to the tracked services. This is not a public class. It is only for use by the implementation of the ServiceTracker
class.
Definition at line 758 of file ServiceTracker.java.
Public Member Functions | |
void | serviceChanged (ServiceEvent event) |
ServiceListener method for the ServiceTracker class. | |
Protected Member Functions | |
Tracked () | |
Tracked constructor. | |
void | setInitialServices (ServiceReference[] references) |
Set initial list of services into tracker before ServiceEvents begin to be received. | |
void | trackInitialServices () |
Track the initial list of services. | |
void | close () |
Called by the owning ServiceTracker object when it is closed. | |
void | track (ServiceReference reference) |
Begin to track the referenced service. | |
void | untrack (ServiceReference reference) |
Discontinue tracking the referenced service. |
void org.osgi.util.tracker.ServiceTracker.Tracked.setInitialServices | ( | ServiceReference[] | references | ) | [protected] |
Set initial list of services into tracker before ServiceEvents begin to be received.
This method must be called from ServiceTracker.open while synchronized on this object in the same synchronized block as the addServiceListener call.
references | The initial list of services to be tracked. |
Definition at line 821 of file ServiceTracker.java.
References org.osgi.util.tracker.ServiceTracker.size().
Referenced by org.osgi.util.tracker.ServiceTracker.open().
void org.osgi.util.tracker.ServiceTracker.Tracked.trackInitialServices | ( | ) | [protected] |
Track the initial list of services.
This is called after ServiceEvents can begin to be received.
This method must be called from ServiceTracker.open while not synchronized on this object after the addServiceListener call.
Definition at line 843 of file ServiceTracker.java.
Referenced by org.osgi.util.tracker.ServiceTracker.open().
void org.osgi.util.tracker.ServiceTracker.Tracked.serviceChanged | ( | ServiceEvent | event | ) |
ServiceListener
method for the ServiceTracker
class.
This method must NOT be synchronized to avoid deadlock potential.
event | ServiceEvent object from the framework. |
Implements org.osgi.framework.ServiceListener.
Definition at line 906 of file ServiceTracker.java.
References org.osgi.util.tracker.ServiceTracker.filter, org.osgi.framework.ServiceEvent.getType(), org.osgi.util.tracker.ServiceTracker.listenerFilter, org.osgi.framework.Filter.match(), org.osgi.util.tracker.ServiceTracker.Tracked.track(), and org.osgi.util.tracker.ServiceTracker.Tracked.untrack().
void org.osgi.util.tracker.ServiceTracker.Tracked.track | ( | ServiceReference | reference | ) | [protected] |
Begin to track the referenced service.
reference | Reference to a service to be tracked. |
Definition at line 963 of file ServiceTracker.java.
References org.osgi.util.tracker.ServiceTracker.customizer, org.osgi.util.tracker.ServiceTracker.modified(), and org.osgi.util.tracker.ServiceTrackerCustomizer.modifiedService().
Referenced by org.osgi.util.tracker.ServiceTracker.Tracked.serviceChanged().
void org.osgi.util.tracker.ServiceTracker.Tracked.untrack | ( | ServiceReference | reference | ) | [protected] |
Discontinue tracking the referenced service.
reference | Reference to the tracked service. |
Definition at line 1071 of file ServiceTracker.java.
References org.osgi.util.tracker.ServiceTracker.customizer, org.osgi.util.tracker.ServiceTracker.modified(), and org.osgi.util.tracker.ServiceTrackerCustomizer.removedService().
Referenced by org.osgi.util.tracker.ServiceTracker.close(), org.osgi.util.tracker.ServiceTracker.remove(), and org.osgi.util.tracker.ServiceTracker.Tracked.serviceChanged().