Remove unneeded setIsSupportedToBuildEffective()
[yangtools.git] / yang / yang-parser-reactor / src / main / java / org / opendaylight / yangtools / yang / parser / stmt / reactor / ReplicaStatementContext.java
index 173e9315bac5587fe15289c71eeda00e38bca1d1..eaa39de25ea6a6a47e276f9a1e3c2aeaf0d816ce 100644 (file)
@@ -10,17 +10,18 @@ package org.opendaylight.yangtools.yang.parser.stmt.reactor;
 import static java.util.Objects.requireNonNull;
 
 import java.util.Collection;
+import java.util.List;
 import java.util.Optional;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 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.IdentifierNamespace;
 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.NamespaceBehaviour.StorageNodeType;
+import org.opendaylight.yangtools.yang.parser.spi.meta.ParserNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StatementNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.source.StatementSourceReference;
@@ -40,9 +41,8 @@ final class ReplicaStatementContext<A, D extends DeclaredStatement<A>, E extends
         this.source = requireNonNull(source);
         if (source.isSupportedToBuildEffective()) {
             source.incRef();
+            // FIXME: is this call really needed? it is inherited from source
             setFullyDefined();
-        } else {
-            setIsSupportedToBuildEffective(false);
         }
     }
 
@@ -52,7 +52,7 @@ final class ReplicaStatementContext<A, D extends DeclaredStatement<A>, E extends
     }
 
     @Override
-    public boolean effectiveConfig() {
+    public EffectiveConfig effectiveConfig() {
         return source.effectiveConfig();
     }
 
@@ -101,6 +101,11 @@ final class ReplicaStatementContext<A, D extends DeclaredStatement<A>, E extends
         return source.history();
     }
 
+    @Override
+    public Collection<? extends StmtContext<?, ?, ?>> getEffectOfStatement() {
+        return List.of();
+    }
+
     @Override
     public Mutable<A, D, E> replicaAsChildOf(final Mutable<?, ?, ?> newParent) {
         return source.replicaAsChildOf(newParent);
@@ -112,11 +117,22 @@ final class ReplicaStatementContext<A, D extends DeclaredStatement<A>, E extends
         return source.copyAsChildOf(newParent, type, targetModule);
     }
 
+    @Override
+    ReactorStmtCtx<?, ?, ?> asEffectiveChildOf(final StatementContextBase<?, ?, ?> newParent, final CopyType type,
+            final QNameModule targetModule) {
+        return source.asEffectiveChildOf(newParent, type, targetModule);
+    }
+
     @Override
     StatementDefinitionContext<A, D, E> definition() {
         return source.definition();
     }
 
+    @Override
+    void markNoParentRef() {
+        // No-op
+    }
+
     @Override
     int sweepSubstatements() {
         if (fullyDefined()) {
@@ -126,8 +142,8 @@ final class ReplicaStatementContext<A, D extends DeclaredStatement<A>, E extends
     }
 
     @Override
-    public <K, V, T extends K, U extends V, N extends IdentifierNamespace<K, V>> void addToNs(
-            final Class<@NonNull N> type, final T key, final U value) {
+    public <K, V, T extends K, U extends V, N extends ParserNamespace<K, V>> void addToNs(final Class<@NonNull N> type,
+            final T key, final U value) {
         throw new UnsupportedOperationException();
     }
 
@@ -142,21 +158,11 @@ final class ReplicaStatementContext<A, D extends DeclaredStatement<A>, E extends
         throw new UnsupportedOperationException();
     }
 
-    @Override
-    public void addAsEffectOfStatement(final StmtContext<?, ?, ?> ctx) {
-        throw new UnsupportedOperationException();
-    }
-
     @Override
     public void addAsEffectOfStatement(final Collection<? extends StmtContext<?, ?, ?>> ctxs) {
         throw new UnsupportedOperationException();
     }
 
-    @Override
-    public Collection<? extends StmtContext<?, ?, ?>> getEffectOfStatement() {
-        throw new UnsupportedOperationException();
-    }
-
     @Override
     public Mutable<?, ?, ?> childCopyOf(final StmtContext<?, ?, ?> stmt, final CopyType type,
             final QNameModule targetModule) {