in component-dsl/src/main/java/org/apache/aries/component/dsl/OSGi.java [571:588]
static <T> OSGi<T> services(Class<T> clazz, String filterString) {
return
bundleContext().flatMap(
bundleContext ->
serviceReferences(clazz, filterString).map(
CachingServiceReference::getServiceReference
).flatMap(
sr -> {
T service = bundleContext.getService(sr);
return
onClose(() -> bundleContext.ungetService(sr)).then(
just(service)
);
}
));
}