@Override public Object execute() throws Exception { if (onlyNames) { listNames(); return null; } List<ServiceReference<?>> serviceRefs = new ArrayList<>(); Bundle[] bundles = bundleContext.getBundles(); for (Bundle bundle : bundles) { ServiceReference<?>[] services = bundle.getRegisteredServices(); if (services != null) { for (ServiceReference<?> ref : services) { String[] objectClasses = (String[])ref.getProperty(Constants.OBJECTCLASS); if (objectClass == null || ObjectClassMatcher.matchesAtLeastOneName(objectClasses, objectClass)) { serviceRefs.add(ref); } } } } Collections.sort(serviceRefs, new ServiceClassComparator()); for (ServiceReference<?> serviceRef : serviceRefs) { if (showAll || !isCommand((String[])serviceRef.getProperty(Constants.OBJECTCLASS))) { printServiceRef(serviceRef); } } return null; }
@Override public Object execute() throws Exception { if (onlyNames) { listNames(); return null; } List<ServiceReference<?>> serviceRefs = new ArrayList<>(); Bundle[] bundles = bundleContext.getBundles(); for (Bundle bundle : bundles) { ServiceReference<?>[] services = bundle.getRegisteredServices(); if (services != null) { for (ServiceReference<?> ref : services) { String[] objectClasses = (String[])ref.getProperty(Constants.OBJECTCLASS); if (objectClass == null || ObjectClassMatcher.matchesAtLeastOneName(objectClasses, objectClass)) { serviceRefs.add(ref); } } } } Collections.sort(serviceRefs, new ServiceClassComparator()); for (ServiceReference<?> serviceRef : serviceRefs) { if (showAll || !isCommand((String[])serviceRef.getProperty(Constants.OBJECTCLASS))) { printServiceRef(serviceRef); } } return null; }
protected Object doExecute() throws Exception { if (onlyNames) { listNames(); return null; } List<ServiceReference<?>> serviceRefs = new ArrayList<ServiceReference<?>>(); Bundle[] bundles = getBundleContext().getBundles(); for (Bundle bundle : bundles) { ServiceReference<?>[] services = bundle.getRegisteredServices(); if (services != null) { for (ServiceReference<?> ref : services) { String[] objectClasses = (String[])ref.getProperty(Constants.OBJECTCLASS); if (objectClass == null || ObjectClassMatcher.matchesAtLeastOneName(objectClasses, objectClass)) { serviceRefs.add(ref); } } } } Collections.sort(serviceRefs, new ServiceClassComparator()); for (ServiceReference<?> serviceRef : serviceRefs) { if (showAll || !isCommand((String[])serviceRef.getProperty(Constants.OBJECTCLASS))) { printServiceRef(serviceRef); } } return null; }