Optimize fixCasesByJavaType for packages 66/59966/2
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 5 Jul 2017 10:10:01 +0000 (12:10 +0200)
committerMartin Ciglan <martin.ciglan@pantheon.tech>
Thu, 6 Jul 2017 09:03:28 +0000 (09:03 +0000)
Rather than doing expensive String.replaceAll(), use CharMatcher's
removeFrom().

Change-Id: I1748fdb3fe11246b81b598cba12ddf166ee3cb4e
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
binding2/mdsal-binding2-generator-util/src/main/java/org/opendaylight/mdsal/binding/javav2/generator/util/JavaIdentifierNormalizer.java

index 60a343618425d8deb9dd625e0118593453d7b998..a408f640ac088cf5a20965c867f12ce6c7f38664 100644 (file)
@@ -209,13 +209,13 @@ public final class JavaIdentifierNormalizer {
     private static final int FIRST_INDEX = 1;
     private static final char UNDERSCORE = '_';
     private static final char DASH = '-';
-    private static final String EMPTY_STRING = "";
     private static final String RESERVED_KEYWORD = "reserved_keyword";
     private static final ListMultimap<String, String> PACKAGES_MAP = ArrayListMultimap.create();
     private static final Set<String> PRIMITIVE_TYPES = ImmutableSet.of("char[]", "byte[]");
 
     private static final CharMatcher DASH_MATCHER = CharMatcher.is(DASH);
     private static final CharMatcher DASH_OR_SPACE_MATCHER = CharMatcher.anyOf(" -");
+    private static final CharMatcher UNDERSCORE_MATCHER = CharMatcher.is(UNDERSCORE);
     private static final Splitter DOT_SPLITTER = Splitter.on('.');
     private static final Splitter UNDERSCORE_SPLITTER = Splitter.on(UNDERSCORE);
 
@@ -473,7 +473,7 @@ public final class JavaIdentifierNormalizer {
             case VARIABLE:
                 return fixCases(convertedIdentifier);
             case PACKAGE:
-                return convertedIdentifier.replaceAll(String.valueOf(UNDERSCORE), EMPTY_STRING);
+                return UNDERSCORE_MATCHER.removeFrom(convertedIdentifier);
             default:
                 throw new IllegalArgumentException("Unknown java type of identifier : " + javaIdentifier.toString());
         }