X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fconfig%2Fconfig-manager%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fmanager%2Fimpl%2Fosgi%2FBeanToOsgiServiceManager.java;h=3d93a9df7dee72bb450af215bd7dea97f24199a5;hp=67475dacf86dde967fbf1877d5892678836a0d28;hb=f2ea11b45c819121a3d6fb8914172148ac3994a3;hpb=ed6019236d78a69577888f60064c3714eaa80f6a
diff --git a/opendaylight/config/config-manager/src/main/java/org/opendaylight/controller/config/manager/impl/osgi/BeanToOsgiServiceManager.java b/opendaylight/config/config-manager/src/main/java/org/opendaylight/controller/config/manager/impl/osgi/BeanToOsgiServiceManager.java
index 67475dacf8..3d93a9df7d 100644
--- a/opendaylight/config/config-manager/src/main/java/org/opendaylight/controller/config/manager/impl/osgi/BeanToOsgiServiceManager.java
+++ b/opendaylight/config/config-manager/src/main/java/org/opendaylight/controller/config/manager/impl/osgi/BeanToOsgiServiceManager.java
@@ -8,7 +8,6 @@
package org.opendaylight.controller.config.manager.impl.osgi;
import static com.google.common.base.Preconditions.checkState;
-
import java.util.Dictionary;
import java.util.HashSet;
import java.util.Hashtable;
@@ -72,7 +71,14 @@ public class BeanToOsgiServiceManager {
Map serviceNamesToAnnotations) {
Set> serviceRegistrations = new HashSet<>();
for (Entry entry : serviceNamesToAnnotations.entrySet()) {
- Class> requiredInterface = entry.getKey().osgiRegistrationType();
+ ServiceInterfaceAnnotation annotation = entry.getKey();
+ Class> requiredInterface = annotation.osgiRegistrationType();
+
+ if(!annotation.registerToOsgi()) {
+ LOG.debug("registerToOsgi for service interface {} is false - not registering", requiredInterface);
+ continue;
+ }
+
checkState(requiredInterface.isInstance(instance), instance.getClass().getName() +
" instance should implement " + requiredInterface.getName());
Dictionary propertiesForOsgi = createProps(entry.getValue());