Make ParserNamespace an identifier
[yangtools.git] / parser / yang-parser-rfc7950 / src / main / java / org / opendaylight / yangtools / yang / parser / rfc7950 / stmt / meta / GroupingStatementSupport.java
index 45f7daf6d7061d5667ea7c4662b3898ae1b756ad..e8b13e578a566fd8dce0a4414a279d31fb5eb05a 100644 (file)
@@ -21,11 +21,12 @@ import org.opendaylight.yangtools.yang.model.api.stmt.GroupingStatement;
 import org.opendaylight.yangtools.yang.model.ri.stmt.DeclaredStatementDecorators;
 import org.opendaylight.yangtools.yang.model.ri.stmt.DeclaredStatements;
 import org.opendaylight.yangtools.yang.model.ri.stmt.EffectiveStatements;
-import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins;
 import org.opendaylight.yangtools.yang.model.spi.meta.SubstatementIndexingException;
 import org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration;
-import org.opendaylight.yangtools.yang.parser.spi.GroupingNamespace;
+import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.EffectiveStmtUtils;
+import org.opendaylight.yangtools.yang.parser.spi.ParserNamespaces;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
+import org.opendaylight.yangtools.yang.parser.spi.meta.BoundStmtCtx;
 import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ModelActionBuilder;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ModelActionBuilder.InferenceAction;
@@ -105,7 +106,7 @@ public final class GroupingStatementSupport
             // Shadowing check: make sure we do not trample on pre-existing definitions. This catches sibling
             // declarations and parent declarations which have already been declared.
             checkConflict(parent, stmt);
-            parent.addContext(GroupingNamespace.class, stmt.getArgument(), stmt);
+            parent.addContext(ParserNamespaces.GROUPING, stmt.getArgument(), stmt);
 
             final StmtContext<?, ?, ?> grandParent = parent.getParentContext();
             if (grandParent != null) {
@@ -130,8 +131,8 @@ public final class GroupingStatementSupport
     }
 
     @Override
-    protected GroupingStatement createDeclared(final StmtContext<QName, GroupingStatement, ?> ctx,
-            final ImmutableList<? extends DeclaredStatement<?>> substatements) {
+    protected GroupingStatement createDeclared(final BoundStmtCtx<QName> ctx,
+            final ImmutableList<DeclaredStatement<?>> substatements) {
         return DeclaredStatements.createGrouping(ctx.getArgument(), substatements);
     }
 
@@ -146,7 +147,7 @@ public final class GroupingStatementSupport
             final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {
         try {
             return EffectiveStatements.createGrouping(stmt.declared(), substatements, stmt.getArgument(),
-                EffectiveStatementMixins.historyAndStatusFlags(stmt.history(), substatements));
+                EffectiveStmtUtils.historyAndStatusFlags(stmt.history(), substatements));
         } catch (SubstatementIndexingException e) {
             throw new SourceException(e.getMessage(), stmt, e);
         }
@@ -154,7 +155,7 @@ public final class GroupingStatementSupport
 
     private static void checkConflict(final StmtContext<?, ?, ?> parent, final StmtContext<QName, ?, ?> stmt) {
         final QName arg = stmt.getArgument();
-        final StmtContext<?, ?, ?> existing = parent.getFromNamespace(GroupingNamespace.class, arg);
+        final StmtContext<?, ?, ?> existing = parent.getFromNamespace(ParserNamespaces.GROUPING, arg);
         SourceException.throwIf(existing != null, stmt, "Duplicate name for grouping %s", arg);
     }
 }