Add service reference binding to config registry.
[controller.git] / opendaylight / config / yang-jmx-generator-plugin / src / main / resources / freeMarker / factory_abs_template.ftl
index a331e4e0c1ad95245f838ebee17192e2a7c61c81..37fd05bc5232eb85c51f0bc0c4e071f440e185d8 100644 (file)
@@ -6,12 +6,14 @@ package ${packageName};
 {
 
     public static final java.lang.String NAME = "${globallyUniqueName}";
-    private static final java.util.Set<Class<? extends ${abstractServiceInterfaceType}>> serviceIfcs = new java.util.HashSet<Class<? extends ${abstractServiceInterfaceType}>>();
+    private static final java.util.Set<Class<? extends ${abstractServiceInterfaceType}>> serviceIfcs;
     <#if providedServices??>
     static {
+        java.util.Set<Class<? extends ${abstractServiceInterfaceType}>> serviceIfcs2 = new java.util.HashSet<Class<? extends ${abstractServiceInterfaceType}>>();
         <#list providedServices as refId>
-        serviceIfcs.add(${refId});
+        serviceIfcs2.add(${refId});
         </#list>
+        serviceIfcs = java.util.Collections.unmodifiableSet(serviceIfcs2);
     }
     </#if>
 
@@ -25,6 +27,12 @@ package ${packageName};
         return false;
     }
 
+    @Override
+    public java.util.Set<Class<? extends ${abstractServiceInterfaceType}>> getImplementedServiceIntefaces() {
+        return serviceIfcs;
+    }
+
+
     @Override
     public ${moduleType} createModule(String instanceName, ${dependencyResolverType} dependencyResolver, ${bundleContextType} bundleContext) {
         return instantiateModule(instanceName, dependencyResolver, bundleContext);