Update the API generation code and code generation sample
[controller.git] / opendaylight / sal / yang-prototype / code-generator / binding-generator-impl / src / main / java / org / opendaylight / controller / sal / binding / generator / impl / GeneratedTOBuilderImpl.java
index 90b2ebfc635177174a3d8af6d51fc21bcfa3c5a4..e39889b8ef94492e36a6634d308a1ec157929f4d 100644 (file)
@@ -8,8 +8,11 @@
 package org.opendaylight.controller.sal.binding.generator.impl;\r
 \r
 import java.util.ArrayList;\r
+import java.util.Arrays;\r
 import java.util.Collections;\r
+import java.util.HashSet;\r
 import java.util.List;\r
+import java.util.Set;\r
 \r
 import org.opendaylight.controller.sal.binding.model.api.AccessModifier;\r
 import org.opendaylight.controller.sal.binding.model.api.Constant;\r
@@ -24,8 +27,21 @@ import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedP
 import org.opendaylight.controller.sal.binding.model.api.type.builder.GeneratedTOBuilder;\r
 \r
 final class GeneratedTOBuilderImpl implements GeneratedTOBuilder {\r
-\r
-    private final String packageName;\r
+    \r
+    private static final String[] SET_VALUES = new String[] { "abstract",\r
+        "assert", "boolean", "break", "byte", "case", "catch", "char",\r
+        "class", "const", "continue", "default", "double", "do", "else",\r
+        "enum", "extends", "false", "final", "finally", "float", "for",\r
+        "goto", "if", "implements", "import", "instanceof", "int",\r
+        "interface", "long", "native", "new", "null", "package", "private",\r
+        "protected", "public", "return", "short", "static", "strictfp",\r
+        "super", "switch", "synchronized", "this", "throw", "throws",\r
+        "transient", "true", "try", "void", "volatile", "while" };\r
+\r
+    public static final Set<String> JAVA_RESERVED_WORDS = new HashSet<String>(\r
+            Arrays.asList(SET_VALUES));\r
+    \r
+    private String packageName;\r
     private final String name;\r
 \r
     private final List<EnumBuilder> enumerations = new ArrayList<EnumBuilder>();\r
@@ -36,10 +52,10 @@ final class GeneratedTOBuilderImpl implements GeneratedTOBuilder {
 \r
     public GeneratedTOBuilderImpl(String packageName, String name) {\r
         super();\r
-        this.packageName = packageName;\r
+        this.packageName = GeneratedTypeBuilderImpl.validatePackage(packageName);\r
         this.name = name;\r
     }\r
-\r
+    \r
     @Override\r
     public String getPackageName() {\r
         return packageName;\r
@@ -49,7 +65,7 @@ final class GeneratedTOBuilderImpl implements GeneratedTOBuilder {
     public String getName() {\r
         return name;\r
     }\r
-\r
+    \r
     @Override\r
     public EnumBuilder addEnumeration(String name) {\r
         final EnumBuilder builder = new EnumerationBuilderImpl(packageName,\r
@@ -83,6 +99,7 @@ final class GeneratedTOBuilderImpl implements GeneratedTOBuilder {
 \r
     @Override\r
     public GeneratedTransferObject toInstance() {\r
+       \r
         return new GeneratedTransferObjectImpl(packageName, name, enumerations,\r
                 properties, equalsProperties, hashProperties,\r
                 toStringProperties);\r