From: Tomas Olvecky Date: Mon, 18 Nov 2013 14:53:04 +0000 (+0100) Subject: Bugfix generated method in Abstract ModuleFactory template. X-Git-Tag: jenkins-controller-bulk-release-prepare-only-2-1~385 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=39a826bf4dc5037eee45a656a9a4d75d933894d2 Bugfix generated method in Abstract ModuleFactory template. Fix generated ModuleFactory#isModuleImplementingServiceInterface: Use isAssignableFrom instead of equality check when testing if possibly super class provided as a parameter can be used instead of possibly more concrete class of implemented service interface. Change-Id: Iee32402facd8ea3fb7ff4a030ca3bdb51d810af0 Signed-off-by: Tomas Olvecky --- 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..a331e4e0c1 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 @@ -17,7 +17,12 @@ package ${packageName}; @Override public final boolean isModuleImplementingServiceInterface(Class serviceInterface) { - return serviceIfcs.contains(serviceInterface); + for (Class ifc: serviceIfcs) { + if (serviceInterface.isAssignableFrom(ifc)){ + return true; + } + } + return false; } @Override diff --git a/opendaylight/config/yang-jmx-generator-plugin/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/JMXGeneratorTest.java b/opendaylight/config/yang-jmx-generator-plugin/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/JMXGeneratorTest.java index 282dff0ec6..556abad7af 100644 --- a/opendaylight/config/yang-jmx-generator-plugin/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/JMXGeneratorTest.java +++ b/opendaylight/config/yang-jmx-generator-plugin/src/test/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/JMXGeneratorTest.java @@ -748,8 +748,10 @@ public class JMXGeneratorTest extends AbstractGeneratorTest { // available if source level is 5.0 if (c.getID() == 1610613329) continue; + if (c.getID() == 1610613328) // 'for each' statements are only available if source level is 5.0 + continue; fail("Error in generated source code " + file + ":" - + c.getSourceLineNumber() + " " + c.toString()); + + c.getSourceLineNumber() + " id: " + c.getID() + " message:" + c.toString()); } ASTVisitor visitor = verifiers.get(file.getName());