Remove ReactorStmtCtx.checkLocalNamespaceAllowed()
[yangtools.git] / yang / yang-parser-reactor / src / main / java / org / opendaylight / yangtools / yang / parser / stmt / reactor / AbstractResumedStatement.java
index b470a569a8cb09c164d7da940b3a7087d8db0981..20a390d1e58d3d451335e028a206c39e8919848f 100644 (file)
@@ -20,7 +20,6 @@ import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement;
 import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
-import org.opendaylight.yangtools.yang.parser.spi.meta.CopyHistory;
 import org.opendaylight.yangtools.yang.parser.spi.meta.CopyType;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ModelProcessingPhase;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupport;
@@ -68,7 +67,7 @@ abstract class AbstractResumedStatement<A, D extends DeclaredStatement<A>, E ext
 
     AbstractResumedStatement(final StatementDefinitionContext<A, D, E> def, final StatementSourceReference ref,
             final String rawArgument, final CopyType copyType) {
-        super(def, CopyHistory.of(copyType, CopyHistory.original()));
+        super(def, copyType);
         this.statementDeclSource = requireNonNull(ref);
         this.rawArgument = rawArgument;
     }
@@ -186,6 +185,12 @@ abstract class AbstractResumedStatement<A, D extends DeclaredStatement<A>, E ext
         return ret;
     }
 
+    @Override
+    final AbstractResumedStatement<A, D, E> unmodifiedEffectiveSource() {
+        // This statement is comes from the source
+        return this;
+    }
+
     @Override
     final boolean hasEmptySubstatements() {
         return substatements.size() == 0 && effective.isEmpty();
@@ -203,13 +208,13 @@ abstract class AbstractResumedStatement<A, D extends DeclaredStatement<A>, E ext
     }
 
     @Override
-    final Stream<? extends StmtContext<?, ?, ?>> streamDeclared() {
-        return declaredSubstatements().stream();
+    final Stream<? extends @NonNull StmtContext<?, ?, ?>> streamDeclared() {
+        return declaredSubstatements().stream().filter(StmtContext::isSupportedToBuildEffective);
     }
 
     @Override
-    final Stream<? extends StmtContext<?, ?, ?>> streamEffective() {
-        return effective.stream();
+    final Stream<? extends @NonNull StmtContext<?, ?, ?>> streamEffective() {
+        return effective.stream().filter(StmtContext::isSupportedToBuildEffective);
     }
 
     @Override