X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fmaven-sal-api-gen-plugin%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmaven%2Fsal%2Fapi%2Fgen%2Fplugin%2FCodeGeneratorImpl.java;h=f6b80bc66640e9b5f4a9ea9ff76e98bae77a81f5;hb=ff1b4a79cca00743a00c3b0b1100bd0ab2b2fb31;hp=1876c689c0e5a10b44f554f51905e4f9b4a6ad0f;hpb=191acb80042120ca010dd9e775626249a0bd2b0b;p=controller.git diff --git a/opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/src/main/java/org/opendaylight/controller/maven/sal/api/gen/plugin/CodeGeneratorImpl.java b/opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/src/main/java/org/opendaylight/controller/maven/sal/api/gen/plugin/CodeGeneratorImpl.java index 1876c689c0..f6b80bc666 100644 --- a/opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/src/main/java/org/opendaylight/controller/maven/sal/api/gen/plugin/CodeGeneratorImpl.java +++ b/opendaylight/sal/yang-prototype/code-generator/maven-sal-api-gen-plugin/src/main/java/org/opendaylight/controller/maven/sal/api/gen/plugin/CodeGeneratorImpl.java @@ -16,9 +16,11 @@ import java.util.Map; import java.util.Set; import org.apache.maven.plugin.logging.Log; +import org.apache.maven.project.MavenProject; import org.opendaylight.controller.sal.binding.generator.api.BindingGenerator; import org.opendaylight.controller.sal.binding.generator.impl.BindingGeneratorImpl; import org.opendaylight.controller.sal.binding.model.api.GeneratedTransferObject; +import org.opendaylight.controller.sal.binding.model.api.Enumeration; import org.opendaylight.controller.sal.binding.model.api.GeneratedType; import org.opendaylight.controller.sal.binding.model.api.Type; import org.opendaylight.controller.sal.java.api.generator.GeneratorJavaFile; @@ -26,32 +28,32 @@ import org.opendaylight.controller.yang.model.api.Module; import org.opendaylight.controller.yang.model.api.SchemaContext; import org.opendaylight.controller.yang2sources.spi.CodeGenerator; -public class CodeGeneratorImpl implements CodeGenerator { +public final class CodeGeneratorImpl implements CodeGenerator { - @Override - public Collection generateSources(SchemaContext context, - File outputBaseDir, Set yangModules, File projectBaseDir) - throws IOException { + @Override + public Collection generateSources(SchemaContext context, + File outputBaseDir, Set yangModules) throws IOException { - final BindingGenerator bindingGenerator = new BindingGeneratorImpl(); - final List types = bindingGenerator.generateTypes(context); - final Set typesToGenerate = new HashSet(); - final Set tosToGenerate = new HashSet(); - for (Type type : types) { - if (type instanceof GeneratedTransferObject) { - tosToGenerate.add((GeneratedTransferObject) type); - } else if (type instanceof GeneratedType) { - typesToGenerate.add((GeneratedType) type); - } + final BindingGenerator bindingGenerator = new BindingGeneratorImpl(); + final List types = bindingGenerator.generateTypes(context); + final Set typesToGenerate = new HashSet<>(); + final Set tosToGenerate = new HashSet<>(); + final Set enumsToGenerate = new HashSet<>(); + for (Type type : types) { + if (type instanceof GeneratedTransferObject) { + tosToGenerate.add((GeneratedTransferObject) type); + } else if (type instanceof GeneratedType) { + typesToGenerate.add((GeneratedType) type); + } else if (type instanceof Enumeration) { + enumsToGenerate.add((Enumeration) type); + } } final GeneratorJavaFile generator = new GeneratorJavaFile( - typesToGenerate, tosToGenerate); + typesToGenerate, tosToGenerate, enumsToGenerate); - return generator.generateToFile(outputBaseDir.getPath().startsWith( - projectBaseDir.getPath()) ? outputBaseDir : new File( - projectBaseDir, outputBaseDir.getPath())); + return generator.generateToFile(outputBaseDir); } @Override @@ -65,4 +67,14 @@ public class CodeGeneratorImpl implements CodeGenerator { // no additional config utilized } + @Override + public void setResourceBaseDir(File resourceBaseDir) { + // no resource processing necessary + } + + @Override + public void setMavenProject(MavenProject project) { + // no additional information needed + } + }