changed builder generator 43/1143/1
authorMichal Rehak <mirehak@cisco.com>
Tue, 10 Sep 2013 05:14:15 +0000 (07:14 +0200)
committerMichal Rehak <mirehak@cisco.com>
Tue, 10 Sep 2013 05:14:22 +0000 (07:14 +0200)
now the private constructor of inner class accesses properties of wrapping class through getters

Signed-off-by: Michal Rehak <mirehak@cisco.com>
code-generator/binding-java-api-generator/src/main/java/org/opendaylight/yangtools/sal/java/api/generator/BaseTemplate.xtend
code-generator/binding-java-api-generator/src/main/java/org/opendaylight/yangtools/sal/java/api/generator/BuilderTemplate.xtend

index 19ce04502f2f8b3c4461446a9da41fea46c946b7..f2119f3256f14697f9ef45adb0facd639cc97ab5 100644 (file)
@@ -56,14 +56,18 @@ abstract class BaseTemplate {
      * @return string with the getter method source code in JAVA format 
      */
     final protected def getterMethod(GeneratedProperty field) {
-    val prefix = if(field.returnType.equals(Types.BOOLEAN)) "is" else "get"
     '''
-        public «field.returnType.importedName» «prefix»«field.name.toFirstUpper»() {
+        public «field.returnType.importedName» «field.getterMethodName»() {
             return «field.fieldName»;
         }
     '''
     }
     
+    final protected def getterMethodName(GeneratedProperty field) {
+        val prefix = if(field.returnType.equals(Types.BOOLEAN)) "is" else "get"
+        return '''«prefix»«field.name.toFirstUpper»'''
+    }
+    
     /**
      * Template method which generates the setter method for <code>field</code>
      * 
index 1aef46dd202220d29764f6b1311127e3d2349a8c..2ce3148534610c153ba1de82fd08e07d00789eb5 100644 (file)
@@ -292,7 +292,7 @@ class BuilderTemplate extends BaseTemplate {
         private «type.name»«IMPL»(«type.name»«BUILDER» builder) {\r
             «IF !properties.empty»\r
                 «FOR field : properties»\r
-                    this.«field.fieldName» = builder.«field.fieldName»;\r
+                    this.«field.fieldName» = builder.«field.getterMethodName»();\r
                 «ENDFOR»\r
             «ENDIF»\r
             «IF augmentField != null»\r