«IF c.name == TypeConstants.PATTERN_CONSTANT_NAME»
«val cValue = c.value»
«IF cValue instanceof List<?>»
- private static final «List.importedName»<«Pattern.importedName»> «Constants.MEMBER_PATTERN_LIST»;
+ private static final «Pattern.importedName»[] «Constants.MEMBER_PATTERN_LIST»;
public static final «List.importedName»<String> «TypeConstants.PATTERN_CONSTANT_NAME» = «ImmutableList.importedName».of(«
FOR v : cValue SEPARATOR ", "»«
IF v instanceof String»"«
*/
def protected generateStaticInicializationBlock() '''
static {
- final «List.importedName»<«Pattern.importedName»> l = new «ArrayList.importedName»<«Pattern.importedName»>();
+ final «Pattern.importedName» a[] = new «Pattern.importedName»[«TypeConstants.PATTERN_CONSTANT_NAME».size()];
+ int i = 0;
for (String regEx : «TypeConstants.PATTERN_CONSTANT_NAME») {
- l.add(Pattern.compile(regEx));
+ a[i++] = Pattern.compile(regEx);
}
- «Constants.MEMBER_PATTERN_LIST» = «ImmutableList.importedName».copyOf(l);
+ «Constants.MEMBER_PATTERN_LIST» = a;
}
'''
import java.net.URLClassLoader;
import java.util.ArrayList;
import java.util.List;
+import java.util.regex.Pattern;
import org.junit.Test;
import org.opendaylight.yangtools.sal.binding.model.api.Type;
import org.opendaylight.yangtools.sal.java.api.generator.GeneratorJavaFile;
assertFalse(stringExt1Class.isInterface());
assertContainsField(stringExt1Class, VAL, String.class);
assertContainsField(stringExt1Class, LENGTH, List.class);
- assertContainsField(stringExt1Class, "patterns", List.class);
+ assertContainsField(stringExt1Class, "patterns", Pattern[].class);
assertContainsField(stringExt1Class, "PATTERN_CONSTANTS", List.class);
assertContainsFieldWithValue(stringExt1Class, "serialVersionUID", Long.TYPE, 6943827552297110991L, String.class);
// assertEquals(5, stringExt1Class.getDeclaredFields().length);