static OSGi services()

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)
                    );
            }
        ));
    }