X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=binding2%2Fmdsal-binding2-generator-util%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fjavav2%2Fgenerator%2Futil%2FJavaIdentifierNormalizer.java;h=8202f192a1650ad7b571772898b7734994d8810b;hb=b3527d64c63d13a5ab02bdcee38bbcb3a14d975a;hp=3c478051fda276a13478b5029c29ea4c1de78a3a;hpb=50d9f2ba56f265b5b0b1a19e67ad569ecabf61c3;p=mdsal.git diff --git a/binding2/mdsal-binding2-generator-util/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/util/JavaIdentifierNormalizer.java b/binding2/mdsal-binding2-generator-util/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/util/JavaIdentifierNormalizer.java index 3c478051fd..8202f192a1 100644 --- a/binding2/mdsal-binding2-generator-util/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/util/JavaIdentifierNormalizer.java +++ b/binding2/mdsal-binding2-generator-util/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/util/JavaIdentifierNormalizer.java @@ -218,6 +218,10 @@ public final class JavaIdentifierNormalizer { private static final CharMatcher DASH_OR_SPACE_MATCHER = CharMatcher.anyOf(" -"); private static final Splitter DOT_SPLITTER = Splitter.on('.'); + // Converted to lower case + private static final Set WINDOWS_RESERVED_WORDS = BindingMapping.WINDOWS_RESERVED_WORDS.stream() + .map(String::toLowerCase).collect(ImmutableSet.toImmutableSet()); + private JavaIdentifierNormalizer() { throw new UnsupportedOperationException("Util class"); } @@ -286,8 +290,7 @@ public final class JavaIdentifierNormalizer { // if part of package name consist from java or windows reserved word, return it with // underscore at the end and in lower case final String lowerPart = packageNamePart.toLowerCase(); - if (BindingMapping.JAVA_RESERVED_WORDS.contains(lowerPart) - || BindingMapping.WINDOWS_RESERVED_WORDS.contains(packageNamePart.toUpperCase())) { + if (BindingMapping.JAVA_RESERVED_WORDS.contains(lowerPart) || WINDOWS_RESERVED_WORDS.contains(lowerPart)) { return lowerPart + UNDERSCORE; } @@ -376,19 +379,16 @@ public final class JavaIdentifierNormalizer { * @return - java acceptable identifier */ public static String normalizeSpecificIdentifier(final String identifier, final JavaIdentifier javaIdentifier) { - final StringBuilder sb = new StringBuilder(); - // if identifier isn't PACKAGE type then check it by reserved keywords - if(javaIdentifier != JavaIdentifier.PACKAGE) { - if (BindingMapping.JAVA_RESERVED_WORDS.contains(identifier.toLowerCase()) - || BindingMapping.WINDOWS_RESERVED_WORDS.contains(identifier.toUpperCase())) { - return fixCasesByJavaType( - sb.append(identifier).append(UNDERSCORE).append(RESERVED_KEYWORD).toString().toLowerCase(), - javaIdentifier); + if (javaIdentifier != JavaIdentifier.PACKAGE) { + final String lower = identifier.toLowerCase(); + if (BindingMapping.JAVA_RESERVED_WORDS.contains(lower) || WINDOWS_RESERVED_WORDS.contains(lower)) { + return fixCasesByJavaType(lower + UNDERSCORE + RESERVED_KEYWORD, javaIdentifier); } } // check and convert first char in identifier if there is non-java char + final StringBuilder sb = new StringBuilder(); final char firstChar = identifier.charAt(FIRST_CHAR); if (!Character.isJavaIdentifierStart(firstChar)) { // converting first char of identifier