public class ServiceReferenceManager extends java.lang.Object implements TrackerCustomizer
Modifier and Type | Class and Description |
---|---|
class |
ServiceReferenceManager.ChangeSet |
Constructor and Description |
---|
ServiceReferenceManager(DependencyModel dep,
org.osgi.framework.Filter filter,
java.util.Comparator<org.osgi.framework.ServiceReference> comparator)
Creates the service reference manager.
|
Modifier and Type | Method and Description |
---|---|
void |
addedService(org.osgi.framework.ServiceReference reference)
A service tracked by the Tracker object has been added in the list.
|
boolean |
addingService(org.osgi.framework.ServiceReference reference)
A service is being added to the Tracker object.
|
void |
close() |
boolean |
contains(org.osgi.framework.ServiceReference ref) |
java.util.List<org.osgi.framework.ServiceReference> |
getBindingInterceptorReferences()
Gets the list of binding interceptors attached to the current service dependency.
|
java.util.Comparator<org.osgi.framework.ServiceReference> |
getComparator() |
org.osgi.framework.Filter |
getFilter() |
org.osgi.framework.ServiceReference |
getFirstService() |
java.util.List<org.osgi.framework.ServiceReference> |
getMatchingServices() |
org.osgi.framework.ServiceReference |
getRankingInterceptorReference()
Gets the service reference of the currently attached ranking interceptor.
|
java.util.List<org.osgi.framework.ServiceReference> |
getSelectedServices() |
java.util.List<org.osgi.framework.ServiceReference> |
getTrackingInterceptorReferences()
Gets the list of tracking interceptors attached to the current service dependency.
|
void |
invalidateMatchingServices() |
void |
invalidateSelectedServices() |
boolean |
isEmpty() |
void |
modifiedService(org.osgi.framework.ServiceReference reference,
java.lang.Object service)
A service tracked by the Tracker object has been modified.
|
void |
onDepartureOfAMatchingService(TransformedServiceReference reference,
java.lang.Object service) |
void |
open() |
void |
removedService(org.osgi.framework.ServiceReference reference,
java.lang.Object service)
A service tracked by the Tracker object has been removed.
|
void |
reset() |
void |
setComparator(java.util.Comparator<org.osgi.framework.ServiceReference> cmp) |
ServiceReferenceManager.ChangeSet |
setFilter(org.osgi.framework.Filter filter,
Tracker tracker)
A new filter is set.
|
void |
setRankingInterceptor(ServiceRankingInterceptor interceptor) |
void |
unweavingServiceBinding(DependencyModel.ServiceBindingHolder sbh) |
java.lang.Object |
weavingServiceBinding(DependencyModel.ServiceBindingHolder sbh) |
public ServiceReferenceManager(DependencyModel dep, org.osgi.framework.Filter filter, java.util.Comparator<org.osgi.framework.ServiceReference> comparator)
dep
- the dependencyfilter
- the filtercomparator
- the comparatorpublic void open()
public java.lang.Object weavingServiceBinding(DependencyModel.ServiceBindingHolder sbh)
public void unweavingServiceBinding(DependencyModel.ServiceBindingHolder sbh)
public java.util.List<org.osgi.framework.ServiceReference> getMatchingServices()
public java.util.List<org.osgi.framework.ServiceReference> getSelectedServices()
public org.osgi.framework.ServiceReference getFirstService()
public boolean contains(org.osgi.framework.ServiceReference ref)
public void reset()
public boolean addingService(org.osgi.framework.ServiceReference reference)
TrackerCustomizer
true
, the service object becomes available from the Tracker.getService()
and
Tracker.getServices()
methods. However notice that the service is still not accessible at that time.addingService
in interface TrackerCustomizer
reference
- the Reference to service being added to the Tracker object.true
if the service reference must be tracked. false
ff the service reference must be
ignored (un-tracked)public void addedService(org.osgi.framework.ServiceReference reference)
TrackerCustomizer
Tracker.getService()
and
Tracker.getServices()
method.addedService
in interface TrackerCustomizer
reference
- the added reference.public void modifiedService(org.osgi.framework.ServiceReference reference, java.lang.Object service)
TrackerCustomizer
modifiedService
in interface TrackerCustomizer
reference
- the reference to service that has been modified.service
- The service object for the modified service.public void onDepartureOfAMatchingService(TransformedServiceReference reference, java.lang.Object service)
public void removedService(org.osgi.framework.ServiceReference reference, java.lang.Object service)
TrackerCustomizer
removedService
in interface TrackerCustomizer
reference
- the reference to service that has been removed.service
- The service object for the removed service.public ServiceReferenceManager.ChangeSet setFilter(org.osgi.framework.Filter filter, Tracker tracker)
filter
- the new filtertracker
- the trackerpublic boolean isEmpty()
public java.util.Comparator<org.osgi.framework.ServiceReference> getComparator()
public void setComparator(java.util.Comparator<org.osgi.framework.ServiceReference> cmp)
public org.osgi.framework.Filter getFilter()
public void setRankingInterceptor(ServiceRankingInterceptor interceptor)
public void close()
public void invalidateMatchingServices()
public void invalidateSelectedServices()
public java.util.List<org.osgi.framework.ServiceReference> getTrackingInterceptorReferences()
public java.util.List<org.osgi.framework.ServiceReference> getBindingInterceptorReferences()
public org.osgi.framework.ServiceReference getRankingInterceptorReference()
null
if no (external) ranking interceptor is currently attached.Copyright © 2006-2014 The Apache Software Foundation. All Rights Reserved.