Bug 1485: Invoke lengthCheck only on non-null object. 89/22189/1
authorTony Tkacik <ttkacik@cisco.com>
Tue, 9 Jun 2015 12:59:25 +0000 (14:59 +0200)
committerTony Tkacik <ttkacik@cisco.com>
Tue, 9 Jun 2015 12:59:25 +0000 (14:59 +0200)
Change-Id: Iec3cf2fe08fbdac4e5139acab7865cd4c4b6224f
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
code-generator/binding-java-api-generator/src/main/java/org/opendaylight/yangtools/sal/java/api/generator/BuilderTemplate.xtend

index 38a6219bad4e70639570c67ca984274683f96b99..46a6ee011c86b56e44c924342dc922cfbe51d1c8 100644 (file)
@@ -448,17 +448,19 @@ class BuilderTemplate extends BaseTemplate {
                 «ENDIF»
             «ENDIF»
             public «type.name»«BUILDER» set«field.name.toFirstUpper»(«field.returnType.importedName» value) {
-                «IF restrictions != null && !restrictions.rangeConstraints.nullOrEmpty»
+                «IF restrictions != null»
                 if (value != null) {
-                    «val rangeGenerator = AbstractRangeGenerator.forType(field.returnType)»
-                    «IF field.returnType instanceof ConcreteType»
-                        «rangeGenerator.generateRangeCheckerCall(field.name.toFirstUpper, "value")»
-                    «ELSE»
-                        «rangeGenerator.generateRangeCheckerCall(field.name.toFirstUpper, "value.getValue()")»
+                    «IF !restrictions.rangeConstraints.nullOrEmpty»
+                        «val rangeGenerator = AbstractRangeGenerator.forType(field.returnType)»
+                        «IF field.returnType instanceof ConcreteType»
+                            «rangeGenerator.generateRangeCheckerCall(field.name.toFirstUpper, "value")»
+                        «ELSE»
+                            «rangeGenerator.generateRangeCheckerCall(field.name.toFirstUpper, "value.getValue()")»
+                        «ENDIF»
                     «ENDIF»
+                    «generateRestrictions(field, "value")»
                 }
                 «ENDIF»
-                «generateRestrictions(field, "value")»
                 this.«field.fieldName» = value;
                 return this;
             }