computeServiceReferenceDescription(ref, use);
dep.addElement(use);
}
}
final ServiceReferenceManager serviceReferenceManager = dependency.getDependency()
.getServiceReferenceManager();
if (serviceReferenceManager == null) {
// Exit here, cannot compute anything else.
deps.addElement(dep);
continue;
}
set = serviceReferenceManager.getMatchingServices();
if (set != null) {
for (ServiceReference ref : set) {
Element use = new Element("Matches", "");
computeServiceReferenceDescription(ref, use);
dep.addElement(use);
}
}
// Add interceptors to the description
List<ServiceReference> interceptors = serviceReferenceManager.getTrackingInterceptorReferences();
for (ServiceReference ref : interceptors) {
Element itcp = new Element("ServiceTrackingInterceptor", "");
computeInterceptorDescription(ref, itcp);
dep.addElement(itcp);
}
ServiceReference ref = serviceReferenceManager.getRankingInterceptorReference();
if (ref != null) {
Element itcp = new Element("ServiceRankingInterceptor", "");
computeInterceptorDescription(ref, itcp);
dep.addElement(itcp);
}
interceptors = serviceReferenceManager.getBindingInterceptorReferences();
for (ServiceReference rf : interceptors) {
Element itcp = new Element("ServiceBindingInterceptor", "");
computeInterceptorDescription(rf, itcp);
dep.addElement(itcp);
}