Bug 1432 - Generated DTOs for types use inefficient instantiation 02/9502/3
authorLadislav Borak <lborak@cisco.com>
Wed, 30 Jul 2014 17:32:00 +0000 (19:32 +0200)
committerRobert Varga <rovarga@cisco.com>
Tue, 5 Aug 2014 20:30:40 +0000 (20:30 +0000)
- changed method for generating default instance value
- only for types (boolean, byte, short, int and long)

Change-Id: I4a423f3569ed84f4d6aff8efe97a110045c6e7c7
Signed-off-by: Ladislav Borak <lborak@cisco.com>
code-generator/binding-java-api-generator/src/main/java/org/opendaylight/yangtools/sal/java/api/generator/ClassTemplate.xtend

index afebd5846b156465d9ec7de1049124190696a7a1..e0e056bf2eb8d08a988a173eb2312f34d97f1a24 100644 (file)
@@ -316,6 +316,16 @@ class ClassTemplate extends BaseTemplate {
                     return new «genTO.name»(defaultValue);
                 «ELSEIF allProperties.size > 1»
                     «bitsArgs»
+                «ELSEIF "java.lang.Boolean".equals(prop.returnType.fullyQualifiedName)»
+                    return new «genTO.name»(Boolean.valueOf(defaultValue));
+                «ELSEIF "java.lang.Byte".equals(prop.returnType.fullyQualifiedName)»
+                    return new «genTO.name»(Byte.valueOf(defaultValue));
+                «ELSEIF "java.lang.Short".equals(prop.returnType.fullyQualifiedName)»
+                    return new «genTO.name»(Short.valueOf(defaultValue));
+                «ELSEIF "java.lang.Integer".equals(prop.returnType.fullyQualifiedName)»
+                    return new «genTO.name»(Integer.valueOf(defaultValue));
+                «ELSEIF "java.lang.Long".equals(prop.returnType.fullyQualifiedName)»
+                    return new «genTO.name»(Long.valueOf(defaultValue));
                 «ELSE»
                     return new «genTO.name»(new «prop.returnType.importedName»(defaultValue));
                 «ENDIF»