X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fbinding-java-api-generator%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fjava%2Fapi%2Fgenerator%2FGeneratorJavaFile.java;h=1d2e60f511fc970b4ad931e521fe4cdeffba002f;hb=2f14a41bbd09010114116aef1499641f7251bf83;hp=55b8d777b790522fea9ec27d0919ec3bac36e766;hpb=400baaf54049cf4d6159e7c03b7c6e724eaa5aa5;p=controller.git diff --git a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorJavaFile.java b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorJavaFile.java index 55b8d777b7..1d2e60f511 100644 --- a/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorJavaFile.java +++ b/opendaylight/sal/yang-prototype/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/controller/sal/java/api/generator/GeneratorJavaFile.java @@ -23,6 +23,7 @@ public final class GeneratorJavaFile { private final CodeGenerator interfaceGenerator; private final ClassCodeGenerator classGenerator; private final EnumGenerator enumGenerator; + private final BuilderGenerator builderGenerator; private final Set genTypes; private final Set genTransferObjects; @@ -35,6 +36,7 @@ public final class GeneratorJavaFile { this.enumerations = new HashSet<>(); this.classGenerator = new ClassCodeGenerator(); this.enumGenerator = new EnumGenerator(); + this.builderGenerator = new BuilderGenerator(); } public GeneratorJavaFile(final Set types, final Set genTransferObjects, @@ -42,6 +44,7 @@ public final class GeneratorJavaFile { this.interfaceGenerator = new InterfaceGenerator(); this.classGenerator = new ClassCodeGenerator(); this.enumGenerator = new EnumGenerator(); + this.builderGenerator = new BuilderGenerator(); this.genTypes = types; this.genTransferObjects = genTransferObjects; @@ -51,14 +54,19 @@ public final class GeneratorJavaFile { public List generateToFile(final File parentDirectory) throws IOException { final List result = new ArrayList<>(); for (GeneratedType type : genTypes) { - final File genFile = generateTypeToJavaFile(parentDirectory, type, interfaceGenerator); + final File genFile = generateTypeToJavaFile(parentDirectory, type, interfaceGenerator, ""); + final File genBuilderFile = generateTypeToJavaFile(parentDirectory, type, builderGenerator, + BuilderGenerator.FILE_NAME_SUFFIX); if (genFile != null) { result.add(genFile); } + if (genBuilderFile != null) { + result.add(genBuilderFile); + } } for (GeneratedTransferObject transferObject : genTransferObjects) { - final File genFile = generateTypeToJavaFile(parentDirectory, transferObject, classGenerator); + final File genFile = generateTypeToJavaFile(parentDirectory, transferObject, classGenerator, ""); if (genFile != null) { result.add(genFile); @@ -66,7 +74,7 @@ public final class GeneratorJavaFile { } for (Enumeration enumeration : enumerations) { - final File genFile = generateTypeToJavaFile(parentDirectory, enumeration, enumGenerator); + final File genFile = generateTypeToJavaFile(parentDirectory, enumeration, enumGenerator, ""); if (genFile != null) { result.add(genFile); @@ -76,7 +84,7 @@ public final class GeneratorJavaFile { return result; } - private File generateTypeToJavaFile(final File parentDir, final Type type, final CodeGenerator generator) + private File generateTypeToJavaFile(final File parentDir, final Type type, final CodeGenerator generator, String fileNameSuffix) throws IOException { if (parentDir == null) { log.warn("Parent Directory not specified, files will be generated " @@ -95,7 +103,7 @@ public final class GeneratorJavaFile { if (!packageDir.exists()) { packageDir.mkdirs(); } - final File file = new File(packageDir, type.getName() + ".java"); + final File file = new File(packageDir, type.getName() + fileNameSuffix + ".java"); try (final FileWriter fw = new FileWriter(file)) { file.createNewFile();