BUG-6972: refactor copy checking
[yangtools.git] / yang / yang-parser-impl / src / main / java / org / opendaylight / yangtools / yang / parser / stmt / reactor / StatementDefinitionContext.java
index 2e78e75ed28b8b5188df2364c3e8c392ec918496..fa5a0a4ec93d4670f2e6eb1aa91e60f18fa6437f 100644 (file)
@@ -13,7 +13,6 @@ import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.meta.IdentifierNamespace;
 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ModelProcessingPhase;
-import org.opendaylight.yangtools.yang.parser.spi.meta.NamespaceNotAvailableException;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StatementFactory;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
@@ -36,7 +35,7 @@ public class StatementDefinitionContext<A,D extends DeclaredStatement<A>,E exten
     }
 
 
-    public void checkNamespaceAllowed(Class<? extends IdentifierNamespace<?,?>> namespace) throws NamespaceNotAvailableException {
+    public void checkNamespaceAllowed(Class<? extends IdentifierNamespace<?,?>> namespace) {
         // Noop
     }
 
@@ -45,12 +44,16 @@ public class StatementDefinitionContext<A,D extends DeclaredStatement<A>,E exten
     }
 
     public boolean onStatementAdded(Mutable<A,D,E> stmt) {
+        support.onStatementAdded(stmt);
         return false;
     }
 
 
     public void onDeclarationFinished(Mutable<A,D,E> statement, ModelProcessingPhase phase) throws SourceException {
         switch (phase) {
+        case SOURCE_PRE_LINKAGE:
+            support.onPreLinkageDeclared(statement);
+            break;
         case SOURCE_LINKAGE:
             support.onLinkageDeclared(statement);
             break;