Speed up StatementContextVisitor.getValidStatementDefinition() 42/79042/6
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 25 Dec 2018 22:18:49 +0000 (23:18 +0100)
committerRobert Varga <nite@hq.sk>
Tue, 25 Dec 2018 23:54:14 +0000 (23:54 +0000)
Unprefixed statements are most common and we end up creating
a QNameModule each time we encounter them, while we have a common
constant which we can use.

Use the constant, allowing us to allocate fewer objects while
also allowing making interning work.

Change-Id: I9e8847f8bd39fb9bcf6f8d0e8b86d196aeb5e2cd
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/repo/StatementContextVisitor.java

index adc73571af8dcfac3590a45b30eb3832a0d2407b..5672a36391fb6eedf3122661b5714f20e20fc27c 100644 (file)
@@ -62,7 +62,7 @@ class StatementContextVisitor {
     QName getValidStatementDefinition(final String keywordText, final StatementSourceReference ref) {
         final int firstColon = keywordText.indexOf(':');
         if (firstColon == -1) {
-            final StatementDefinition def = stmtDef.get(QName.create(YangConstants.RFC6020_YIN_NAMESPACE, keywordText));
+            final StatementDefinition def = stmtDef.get(QName.create(YangConstants.RFC6020_YIN_MODULE, keywordText));
             return def != null ? def.getStatementName() : null;
         }