X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fconfig%2Fyang-jmx-generator-plugin%2Fsrc%2Fmain%2Fresources%2FfreeMarker%2Ffactory_abs_template.ftl;h=b9bbf1f1b564fdc9e8238d30e486ed6234190b69;hb=ef6bd770f1366f84fdbc7ab19fa649953b36197b;hp=00f2581ae14ff82ecd6ab29e9a51c72120ad8eef;hpb=101159d6c201d67b670151f3ba8e31985a4923b7;p=controller.git diff --git a/opendaylight/config/yang-jmx-generator-plugin/src/main/resources/freeMarker/factory_abs_template.ftl b/opendaylight/config/yang-jmx-generator-plugin/src/main/resources/freeMarker/factory_abs_template.ftl index 00f2581ae1..b9bbf1f1b5 100644 --- a/opendaylight/config/yang-jmx-generator-plugin/src/main/resources/freeMarker/factory_abs_template.ftl +++ b/opendaylight/config/yang-jmx-generator-plugin/src/main/resources/freeMarker/factory_abs_template.ftl @@ -2,24 +2,38 @@ package ${packageName}; <@javadocD object=javadoc/> +@org.opendaylight.yangtools.yang.binding.annotations.ModuleQName(namespace="${mbe.getYangModuleQName().getNamespace().toString()}",revision="${mbe.getYangModuleQName().getFormattedRevision()}",name="${mbe.getYangModuleQName().getLocalName()}") <@typeDeclarationD object=typeDeclaration/> { public static final java.lang.String NAME = "${globallyUniqueName}"; - private static final java.util.Set> serviceIfcs = new java.util.HashSet>(); + private static final java.util.Set> serviceIfcs; <#if providedServices??> static { + java.util.Set> serviceIfcs2 = new java.util.HashSet>(); <#list providedServices as refId> - serviceIfcs.add(${refId}); + serviceIfcs2.add(${refId}); + serviceIfcs = java.util.Collections.unmodifiableSet(serviceIfcs2); } @Override public final boolean isModuleImplementingServiceInterface(Class serviceInterface) { - return serviceIfcs.contains(serviceInterface); + for (Class ifc: serviceIfcs) { + if (serviceInterface.isAssignableFrom(ifc)){ + return true; + } + } + return false; } + @Override + public java.util.Set> getImplementedServiceIntefaces() { + return serviceIfcs; + } + + @Override public ${moduleType} createModule(String instanceName, ${dependencyResolverType} dependencyResolver, ${bundleContextType} bundleContext) { return instantiateModule(instanceName, dependencyResolver, bundleContext);