Improve often-used class imports
[mdsal.git] / binding / mdsal-binding-java-api-generator / src / main / java / org / opendaylight / mdsal / binding / java / api / generator / ClassTemplate.xtend
index 475c8ce51c478306fee3ae4bd04b4e1799f653b8..fac6cf25c5aed0a114667df8fd07314f01508bbb 100644 (file)
@@ -22,6 +22,7 @@ import static org.opendaylight.mdsal.binding.model.util.BaseYangTypes.UINT32_TYP
 import static org.opendaylight.mdsal.binding.model.util.BaseYangTypes.UINT64_TYPE
 import static org.opendaylight.mdsal.binding.model.util.BaseYangTypes.UINT8_TYPE
 import static org.opendaylight.mdsal.binding.model.util.BindingTypes.SCALAR_TYPE_OBJECT
+import static org.opendaylight.mdsal.binding.model.util.Types.BOOLEAN
 import static org.opendaylight.mdsal.binding.model.util.Types.STRING;
 import static extension org.apache.commons.text.StringEscapeUtils.escapeJava
 
@@ -402,21 +403,19 @@ class ClassTemplate extends BaseTemplate {
             «val propType = prop.returnType»
             «IF !(INSTANCE_IDENTIFIER.identifier.equals(propType.identifier))»
             public static «genTO.name» getDefaultInstance(final String defaultValue) {
-                «IF BINARY_TYPE.equals(propType)»
-                    return new «genTO.name»(«Base64.importedName».getDecoder().decode(defaultValue));
+                «IF allProperties.size > 1»
+                    «bitsArgs»
+                «ELSEIF VALUEOF_TYPES.contains(propType)»
+                    return new «genTO.name»(«propType.importedName».valueOf(defaultValue));
                 «ELSEIF STRING_TYPE.equals(propType)»
                     return new «genTO.name»(defaultValue);
+                «ELSEIF BINARY_TYPE.equals(propType)»
+                    return new «genTO.name»(«Base64.importedName».getDecoder().decode(defaultValue));
                 «ELSEIF EMPTY_TYPE.equals(propType)»
                     «Preconditions.importedName».checkArgument(defaultValue.isEmpty(), "Invalid value %s", defaultValue);
                     return new «genTO.name»(«Empty.importedName».getInstance());
-                «ELSEIF allProperties.size > 1»
-                    «bitsArgs»
                 «ELSE»
-                    «IF VALUEOF_TYPES.contains(propType)»
-                        return new «genTO.name»(«propType.importedName».valueOf(defaultValue));
-                    «ELSE»
-                        return new «genTO.name»(new «propType.importedName»(defaultValue));
-                    «ENDIF»
+                    return new «genTO.name»(new «propType.importedName»(defaultValue));
                 «ENDIF»
             }
             «ENDIF»
@@ -432,7 +431,7 @@ class ClassTemplate extends BaseTemplate {
         int i = 0;
         return new «genTO.name»(
         «FOR prop : allProperties SEPARATOR ","»
-            properties.get(i++).equals(defaultValue) ? «Boolean.importedName».TRUE : null
+            properties.get(i++).equals(defaultValue) ? «BOOLEAN.importedName».TRUE : null
         «ENDFOR»
         );
     '''