X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fconfig%2Fyang-jmx-generator-plugin%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fyangjmxgenerator%2Fplugin%2FJMXGenerator.java;h=1b8905b9871c0a1334ebacbc28a1f6dd52d41492;hb=3ab0ebe1df3e7606cce0a61572f79bf12deb17c0;hp=10f19e8399c0fd01ab11b787fcb02951892a778f;hpb=4f623c74a703a31e787387b536981dcb344ca4f9;p=controller.git diff --git a/opendaylight/config/yang-jmx-generator-plugin/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/JMXGenerator.java b/opendaylight/config/yang-jmx-generator-plugin/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/JMXGenerator.java index 10f19e8399..1b8905b987 100644 --- a/opendaylight/config/yang-jmx-generator-plugin/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/JMXGenerator.java +++ b/opendaylight/config/yang-jmx-generator-plugin/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/JMXGenerator.java @@ -22,6 +22,7 @@ import org.opendaylight.controller.config.yangjmxgenerator.ServiceInterfaceEntry import org.opendaylight.controller.config.yangjmxgenerator.TypeProviderWrapper; import org.opendaylight.yangtools.sal.binding.yang.types.TypeProviderImpl; import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.model.api.IdentitySchemaNode; import org.opendaylight.yangtools.yang.model.api.Module; import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.opendaylight.yangtools.yang2sources.spi.CodeGenerator; @@ -61,7 +62,7 @@ public class JMXGenerator implements CodeGenerator { private boolean generateModuleFactoryFile = true; public JMXGenerator() { - this.codeWriter = new FreeMarkerCodeWriterImpl(); + this.codeWriter = new CodeWriter(); } public JMXGenerator(CodeWriter codeWriter) { @@ -70,7 +71,7 @@ public class JMXGenerator implements CodeGenerator { @Override public Collection generateSources(SchemaContext context, - File outputBaseDir, Set yangModulesInCurrentMavenModule) { + File outputBaseDir, Set yangModulesInCurrentMavenModule) { Preconditions.checkArgument(context != null, "Null context received"); Preconditions.checkArgument(outputBaseDir != null, @@ -86,24 +87,25 @@ public class JMXGenerator implements CodeGenerator { outputBaseDir.mkdirs(); GeneratedFilesTracker generatedFiles = new GeneratedFilesTracker(); + // create SIE structure qNamesToSIEs Map qNamesToSIEs = new HashMap<>(); - // create SIE structure qNamesToSIEs + + Map knownSEITracker = new HashMap<>(); for (Module module : context.getModules()) { String packageName = packageTranslator.getPackageName(module); Map namesToSIEntries = ServiceInterfaceEntry - .create(module, packageName); + .create(module, packageName, knownSEITracker); for (Entry sieEntry : namesToSIEntries .entrySet()) { - // merge value into qNamesToSIEs if (qNamesToSIEs.containsKey(sieEntry.getKey()) == false) { qNamesToSIEs.put(sieEntry.getKey(), sieEntry.getValue()); } else { throw new IllegalStateException( - "Cannot add two SIE with same qname " - + sieEntry.getValue()); + "Cannot add two SIE with same qname " + + sieEntry.getValue()); } } if (yangModulesInCurrentMavenModule.contains(module)) { @@ -138,7 +140,7 @@ public class JMXGenerator implements CodeGenerator { ModuleMXBeanEntry mbe = mbeEntry.getValue(); try { List files1 = codeWriter.writeMbe(mbe, outputBaseDir, - mainBaseDir, resourceBaseDir); + mainBaseDir); generatedFiles.addFile(files1); } catch (Exception e) { throw new RuntimeException( @@ -202,7 +204,7 @@ public class JMXGenerator implements CodeGenerator { @Override public void setLog(Log log) { - StaticLoggerBinder.getSingleton().setLog(log); + StaticLoggerBinder.getSingleton().setMavenLog(log); } private static Map extractNamespaceMapping(