Constify Types.listTypeFor(BaseYangTypes.STRING_TYPE) 15/73415/7
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 25 Jun 2018 16:29:25 +0000 (18:29 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Wed, 27 Jun 2018 13:18:54 +0000 (15:18 +0200)
We use this type for each constraint, hence we should be treating
it as a constant.

Change-Id: I1e730ea8439e154295841924776f6049d2347d60
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/mdsal/binding/generator/impl/AbstractTypeGenerator.java

index bb7a38d81c47932cb6d4dc9b204b30c86d7c814a..db063e50b7a58b5c33868e159110332aadcc4b56 100644 (file)
@@ -28,6 +28,7 @@ import static org.opendaylight.mdsal.binding.model.util.BindingTypes.identifiabl
 import static org.opendaylight.mdsal.binding.model.util.BindingTypes.identifier;
 import static org.opendaylight.mdsal.binding.model.util.BindingTypes.rpcResult;
 import static org.opendaylight.mdsal.binding.model.util.Types.BOOLEAN;
+import static org.opendaylight.mdsal.binding.model.util.Types.listTypeFor;
 import static org.opendaylight.mdsal.binding.model.util.Types.listenableFutureTypeFor;
 import static org.opendaylight.mdsal.binding.model.util.Types.typeForClass;
 import static org.opendaylight.yangtools.yang.model.util.SchemaContextUtil.findDataSchemaNode;
@@ -116,6 +117,7 @@ abstract class AbstractTypeGenerator {
     private static final Splitter COLON_SPLITTER = Splitter.on(':');
     private static final JavaTypeName DEPRECATED_ANNOTATION = JavaTypeName.create(Deprecated.class);
     private static final JavaTypeName OVERRIDE_ANNOTATION = JavaTypeName.create(Override.class);
+    private static final Type LIST_STRING_TYPE = listTypeFor(BaseYangTypes.STRING_TYPE);
 
     /**
      * Comparator based on augment target path.
@@ -285,7 +287,7 @@ abstract class AbstractTypeGenerator {
             final Type baseInterface, final ListSchemaNode node) {
         final GeneratedTypeBuilder genType = processDataSchemaNode(context, baseInterface, node);
         if (genType != null) {
-            constructGetter(parent, Types.listTypeFor(genType), node);
+            constructGetter(parent, listTypeFor(genType), node);
 
             final List<String> listKeys = listKeys(node);
             final GeneratedTOBuilder genTOBuilder = resolveListKeyTOBuilder(context, node);
@@ -1247,7 +1249,7 @@ abstract class AbstractTypeGenerator {
         if (!patternConstraints.isEmpty()) {
             final StringBuilder field = new StringBuilder().append(TypeConstants.PATTERN_CONSTANT_NAME).append("_")
                 .append(BindingMapping.getPropertyName(leafName));
-            typeBuilder.addConstant(Types.listTypeFor(BaseYangTypes.STRING_TYPE), field.toString(),
+            typeBuilder.addConstant(LIST_STRING_TYPE, field.toString(),
                 typeProvider.resolveRegExpressions(patternConstraints));
         }
     }
@@ -1521,7 +1523,7 @@ abstract class AbstractTypeGenerator {
             addPatternConstant(typeBuilder, node.getQName().getLocalName(), restrictions.getPatternConstraints());
         }
 
-        final ParameterizedType listType = Types.listTypeFor(returnType);
+        final ParameterizedType listType = listTypeFor(returnType);
         constructGetter(typeBuilder, listType, node);
         return true;
     }