Fix statement support generic arguments 70/86870/2
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 13 Jan 2020 22:32:44 +0000 (23:32 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 14 Jan 2020 12:59:26 +0000 (13:59 +0100)
StatementSupport implementations should be specifying exact effective
statement, so that EffectiveStatement is correctly tied into the support.

This leads to less generic arguments, making the code easier to read
and more predictable in results.

Change-Id: I24c611035731124315778f834e1a6d6f6a779e0f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
63 files changed:
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/action/ActionEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/action/ActionStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anydata/AnydataEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anydata/AnydataStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/argument/ArgumentStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AugmentEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/base/BaseStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/bit/AbstractBitStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/case_/AbstractCaseStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/case_/CaseEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/choice/AbstractChoiceStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/choice/ChoiceEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/config/ConfigStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/config/EmptyConfigStatement.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviate/AbstractDeviateStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviation/DeviationStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/enum_/AbstractEnumStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ExtensionEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ExtensionStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/feature/FeatureStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/fraction_digits/FractionDigitsStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/grouping/AbstractGroupingStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/grouping/GroupingEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/if_feature/IfFeatureStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/AbstractImportStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/RevisionImport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/SemanticVersionImport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/include/AbstractIncludeStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/input/AbstractInputStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/input/InputEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/length/LengthStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/max_elements/MaxElementsStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/min_elements/MinElementsStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/modifier/ModifierStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/must/MustStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/namespace/NamespaceStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/AbstractNotificationStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/NotificationEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/NotificationStatementRFC6020Support.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/NotificationStatementRFC7950Support.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/output/AbstractOutputStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/output/OutputEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/path/PathStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/AbstractPatternStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/position/PositionStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/range/RangeStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/AbstractRefineStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/require_instance/RequireInstanceStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/revision/RevisionStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/revision_date/RevisionDateStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/rpc/AbstractRpcStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/rpc/RpcEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/status/StatusStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/typedef/TypedefStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/unique/UniqueStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/uses/UsesEffectiveStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/uses/UsesStatementImpl.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/uses/UsesStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/value/ValueStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/when/WhenStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/yang_version/YangVersionStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/yin_element/YinElementStatementSupport.java

index 03192827e89cce494d7893e22e1c55eb216d6af0..d2cb5cbf4e84c80cfe9ace99056fe78fbe9fa969 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.action;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.ActionDefinition;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ActionEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ActionStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractEffectiveOperationDefinition;
@@ -22,8 +21,7 @@ final class ActionEffectiveStatementImpl extends AbstractEffectiveOperationDefin
     private final boolean augmenting;
     private final boolean addedByUses;
 
-    ActionEffectiveStatementImpl(
-            final StmtContext<QName, ActionStatement, EffectiveStatement<QName, ActionStatement>> ctx) {
+    ActionEffectiveStatementImpl(final StmtContext<QName, ActionStatement, ActionEffectiveStatement> ctx) {
         super(ctx);
 
         // initCopyType
index b0acf7ef1de97e7e3b1bc0c7bf5daf743de5f951..d97b1b9ad50cef365dd2ae633e99fd4343595b1e 100644 (file)
@@ -10,8 +10,8 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.action;
 import com.google.common.collect.ImmutableSet;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
+import org.opendaylight.yangtools.yang.model.api.stmt.ActionEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ActionStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.InputStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.OutputStatement;
@@ -20,13 +20,14 @@ import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.input.InputStatementR
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.output.OutputStatementRFC7950Support;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
+import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 import org.opendaylight.yangtools.yang.parser.stmt.reactor.StatementContextBase;
 
 public final class ActionStatementSupport
-        extends AbstractQNameStatementSupport<ActionStatement, EffectiveStatement<QName, ActionStatement>> {
+        extends AbstractQNameStatementSupport<ActionStatement, ActionEffectiveStatement> {
     private static final ImmutableSet<StatementDefinition> ILLEGAL_PARENTS = ImmutableSet.of(
             YangStmtMapping.NOTIFICATION, YangStmtMapping.RPC, YangStmtMapping.ACTION);
 
@@ -57,8 +58,7 @@ public final class ActionStatementSupport
     }
 
     @Override
-    public void onStatementAdded(
-            final StmtContext.Mutable<QName, ActionStatement, EffectiveStatement<QName, ActionStatement>> stmt) {
+    public void onStatementAdded(final Mutable<QName, ActionStatement, ActionEffectiveStatement> stmt) {
         stmt.coerceParentContext().addToNs(ChildSchemaNodeNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
 
@@ -69,8 +69,8 @@ public final class ActionStatementSupport
     }
 
     @Override
-    public EffectiveStatement<QName, ActionStatement> createEffective(
-            final StmtContext<QName, ActionStatement, EffectiveStatement<QName, ActionStatement>> ctx) {
+    public ActionEffectiveStatement createEffective(
+            final StmtContext<QName, ActionStatement, ActionEffectiveStatement> ctx) {
         SourceException.throwIf(StmtContextUtils.hasAncestorOfType(ctx, ILLEGAL_PARENTS),
                 ctx.getStatementSourceReference(),
                 "Action %s is defined within a notification, rpc or another action", ctx.getStatementArgument());
@@ -87,8 +87,7 @@ public final class ActionStatementSupport
     }
 
     @Override
-    public void onFullDefinitionDeclared(final StmtContext.Mutable<QName, ActionStatement,
-            EffectiveStatement<QName, ActionStatement>> stmt) {
+    public void onFullDefinitionDeclared(final Mutable<QName, ActionStatement, ActionEffectiveStatement> stmt) {
         super.onFullDefinitionDeclared(stmt);
 
         if (StmtContextUtils.findFirstDeclaredSubstatement(stmt, InputStatement.class) == null) {
index 8c54250dfc8353e66fd01649ceee37de7f57b7dc..c0b8d0494837422f3047e5a1481aa91980b67a0e 100644 (file)
@@ -15,7 +15,6 @@ import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.AnydataSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.DerivableSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.AnydataEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.AnydataStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.MandatoryEffectiveStatement;
@@ -33,8 +32,7 @@ final class AnydataEffectiveStatementImpl extends AbstractEffectiveMustConstrain
     private final ContainerSchemaNode schema;
     private final boolean mandatory;
 
-    AnydataEffectiveStatementImpl(
-            final StmtContext<QName, AnydataStatement, EffectiveStatement<QName, AnydataStatement>> ctx) {
+    AnydataEffectiveStatementImpl(final StmtContext<QName, AnydataStatement, AnydataEffectiveStatement> ctx) {
         super(ctx);
         this.original = (AnydataSchemaNode) ctx.getOriginalCtx().map(StmtContext::buildEffective).orElse(null);
         mandatory = findFirstEffectiveSubstatementArgument(MandatoryEffectiveStatement.class).orElse(Boolean.FALSE)
index 91726646402cc20439e8a3d0945c09993bdedaa3..e729e8cb0fa9bbdf5991cbdfc2a3b09b0784fb8a 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.anydata;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.AnydataEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.AnydataStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -18,8 +18,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class AnydataStatementSupport extends
-        AbstractQNameStatementSupport<AnydataStatement, EffectiveStatement<QName, AnydataStatement>> {
+public final class AnydataStatementSupport
+        extends AbstractQNameStatementSupport<AnydataStatement, AnydataEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.ANYDATA)
         .addOptional(YangStmtMapping.CONFIG)
@@ -47,8 +47,7 @@ public final class AnydataStatementSupport extends
     }
 
     @Override
-    public void onStatementAdded(final Mutable<QName, AnydataStatement,
-            EffectiveStatement<QName, AnydataStatement>> stmt) {
+    public void onStatementAdded(final Mutable<QName, AnydataStatement, AnydataEffectiveStatement> stmt) {
         stmt.coerceParentContext().addToNs(ChildSchemaNodeNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
 
@@ -58,8 +57,8 @@ public final class AnydataStatementSupport extends
     }
 
     @Override
-    public EffectiveStatement<QName, AnydataStatement> createEffective(
-            final StmtContext<QName, AnydataStatement, EffectiveStatement<QName, AnydataStatement>> ctx) {
+    public AnydataEffectiveStatement createEffective(
+            final StmtContext<QName, AnydataStatement, AnydataEffectiveStatement> ctx) {
         return new AnydataEffectiveStatementImpl(ctx);
     }
 
index 6258721d4935899c33cbd9f1245e2289b6938208..527582e0f9bf3d275709a3611234ad6c23c9cf4f 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.argument;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.ArgumentEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ArgumentStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
@@ -17,7 +17,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
 public final class ArgumentStatementSupport
-        extends AbstractQNameStatementSupport<ArgumentStatement, EffectiveStatement<QName, ArgumentStatement>> {
+        extends AbstractQNameStatementSupport<ArgumentStatement, ArgumentEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .ARGUMENT)
         .addOptional(YangStmtMapping.YIN_ELEMENT)
@@ -38,14 +38,13 @@ public final class ArgumentStatementSupport
     }
 
     @Override
-    public ArgumentStatement createDeclared(
-            final StmtContext<QName, ArgumentStatement, ?> ctx) {
+    public ArgumentStatement createDeclared(final StmtContext<QName, ArgumentStatement, ?> ctx) {
         return new ArgumentStatementImpl(ctx);
     }
 
     @Override
-    public EffectiveStatement<QName, ArgumentStatement> createEffective(
-            final StmtContext<QName, ArgumentStatement, EffectiveStatement<QName, ArgumentStatement>> ctx) {
+    public ArgumentEffectiveStatement createEffective(
+            final StmtContext<QName, ArgumentStatement, ArgumentEffectiveStatement> ctx) {
         return new ArgumentEffectiveStatementImpl(ctx);
     }
 
index dff3296dd511af6f3fa8d609e3539a817810065d..ba1c857c7bb6b76258a38ff73cb905cddf5be3be 100644 (file)
@@ -18,6 +18,7 @@ import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.YangVersion;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
 import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.AugmentEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.AugmentStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.DataDefinitionStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
@@ -44,8 +45,8 @@ import org.opendaylight.yangtools.yang.parser.stmt.reactor.StatementContextBase;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-abstract class AbstractAugmentStatementSupport extends AbstractStatementSupport<SchemaNodeIdentifier, AugmentStatement,
-        EffectiveStatement<SchemaNodeIdentifier, AugmentStatement>> {
+abstract class AbstractAugmentStatementSupport
+        extends AbstractStatementSupport<SchemaNodeIdentifier, AugmentStatement, AugmentEffectiveStatement> {
     private static final Logger LOG = LoggerFactory.getLogger(AbstractAugmentStatementSupport.class);
     private static final Pattern PATH_REL_PATTERN1 = Pattern.compile("\\.\\.?\\s*/(.+)");
     private static final Pattern PATH_REL_PATTERN2 = Pattern.compile("//.*");
@@ -70,15 +71,14 @@ abstract class AbstractAugmentStatementSupport extends AbstractStatementSupport<
     }
 
     @Override
-    public final EffectiveStatement<SchemaNodeIdentifier, AugmentStatement> createEffective(
-            final StmtContext<SchemaNodeIdentifier, AugmentStatement,
-            EffectiveStatement<SchemaNodeIdentifier, AugmentStatement>> ctx) {
+    public final AugmentEffectiveStatement createEffective(
+            final StmtContext<SchemaNodeIdentifier, AugmentStatement, AugmentEffectiveStatement> ctx) {
         return new AugmentEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public final void onFullDefinitionDeclared(final Mutable<SchemaNodeIdentifier, AugmentStatement,
-            EffectiveStatement<SchemaNodeIdentifier, AugmentStatement>> augmentNode) {
+    public final void onFullDefinitionDeclared(
+            final Mutable<SchemaNodeIdentifier, AugmentStatement, AugmentEffectiveStatement> augmentNode) {
         if (!augmentNode.isSupportedByFeatures()) {
             return;
         }
@@ -92,8 +92,8 @@ abstract class AbstractAugmentStatementSupport extends AbstractStatementSupport<
         final ModelActionBuilder augmentAction = augmentNode.newInferenceAction(
             ModelProcessingPhase.EFFECTIVE_MODEL);
         final Prerequisite<StmtContext<SchemaNodeIdentifier, AugmentStatement,
-            EffectiveStatement<SchemaNodeIdentifier, AugmentStatement>>> sourceCtxPrereq =
-                augmentAction.requiresCtx(augmentNode, ModelProcessingPhase.EFFECTIVE_MODEL);
+                AugmentEffectiveStatement>> sourceCtxPrereq =
+                    augmentAction.requiresCtx(augmentNode, ModelProcessingPhase.EFFECTIVE_MODEL);
         final Prerequisite<Mutable<?, ?, EffectiveStatement<?, ?>>> target =
                 augmentAction.mutatesEffectiveCtxPath(getSearchRoot(augmentNode),
                     ChildSchemaNodeNamespace.class, augmentNode.coerceStatementArgument().getPathFromRoot());
index 904afd966464b8df0605ca3c08e0cbe3494e7010..ac6adf8fc5acdd94e3e3959686ff7df79340dfd4 100644 (file)
@@ -49,8 +49,8 @@ final class AugmentEffectiveStatementImpl
     private final RevisionAwareXPath whenCondition;
     private final AugmentationSchemaNode copyOf;
 
-    AugmentEffectiveStatementImpl(final StmtContext<SchemaNodeIdentifier, AugmentStatement,
-            EffectiveStatement<SchemaNodeIdentifier, AugmentStatement>> ctx) {
+    AugmentEffectiveStatementImpl(
+            final StmtContext<SchemaNodeIdentifier, AugmentStatement, AugmentEffectiveStatement> ctx) {
         super(ctx);
         targetPath = ctx.coerceStatementArgument().asSchemaPath();
         rootModuleQName = StmtContextUtils.getRootModuleQName(ctx);
index 2d38253cc461896fe64140d37e572842469643a1..e849e7ea01ce7549cee3dfa6d417ff64fe28b48d 100644 (file)
@@ -12,7 +12,7 @@ import java.util.Collection;
 import java.util.List;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.BaseEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.BaseStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.IdentityStatement;
 import org.opendaylight.yangtools.yang.parser.spi.IdentityNamespace;
@@ -29,8 +29,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class BaseStatementSupport
-        extends AbstractQNameStatementSupport<BaseStatement, EffectiveStatement<QName, BaseStatement>> {
+public final class BaseStatementSupport extends AbstractQNameStatementSupport<BaseStatement, BaseEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR =
             SubstatementValidator.builder(YangStmtMapping.BASE).build();
     private static final BaseStatementSupport INSTANCE = new BaseStatementSupport();
@@ -54,14 +53,12 @@ public final class BaseStatementSupport
     }
 
     @Override
-    public EffectiveStatement<QName, BaseStatement> createEffective(
-            final StmtContext<QName, BaseStatement, EffectiveStatement<QName, BaseStatement>> ctx) {
+    public BaseEffectiveStatement createEffective(final StmtContext<QName, BaseStatement, BaseEffectiveStatement> ctx) {
         return new BaseEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public void onStatementDefinitionDeclared(
-            final Mutable<QName, BaseStatement, EffectiveStatement<QName, BaseStatement>> baseStmtCtx) {
+    public void onStatementDefinitionDeclared(final Mutable<QName, BaseStatement, BaseEffectiveStatement> baseStmtCtx) {
         final Mutable<?, ?, ?> baseParentCtx = baseStmtCtx.getParentContext();
         if (StmtContextUtils.producesDeclared(baseParentCtx, IdentityStatement.class)) {
 
index 353dbffc2dd851528af0524b5089add20486be78..eaed06d8da8146d830d54a2a8bda9b6778f47649 100644 (file)
@@ -9,14 +9,13 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.bit;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.BitEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.BitStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 
-abstract class AbstractBitStatementSupport extends
-        AbstractQNameStatementSupport<BitStatement, EffectiveStatement<QName, BitStatement>> {
+abstract class AbstractBitStatementSupport extends AbstractQNameStatementSupport<BitStatement, BitEffectiveStatement> {
     AbstractBitStatementSupport() {
         super(YangStmtMapping.BIT);
     }
@@ -32,8 +31,8 @@ abstract class AbstractBitStatementSupport extends
     }
 
     @Override
-    public final EffectiveStatement<QName, BitStatement> createEffective(
-            final StmtContext<QName, BitStatement, EffectiveStatement<QName, BitStatement>> ctx) {
+    public final BitEffectiveStatement createEffective(
+            final StmtContext<QName, BitStatement, BitEffectiveStatement> ctx) {
         return new BitEffectiveStatementImpl(ctx);
     }
 }
\ No newline at end of file
index 2b3d6effc01151c860768c58925eea498a0d0700..8853092be24dfb632336a5dc6f52dfe166a07ccb 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.case_;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.CaseEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.CaseStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -18,8 +18,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 
 abstract class AbstractCaseStatementSupport
-        extends AbstractQNameStatementSupport<CaseStatement, EffectiveStatement<QName, CaseStatement>> {
-
+        extends AbstractQNameStatementSupport<CaseStatement, CaseEffectiveStatement> {
     AbstractCaseStatementSupport() {
         super(YangStmtMapping.CASE);
     }
@@ -30,8 +29,7 @@ abstract class AbstractCaseStatementSupport
     }
 
     @Override
-    public final void onStatementAdded(
-            final Mutable<QName, CaseStatement, EffectiveStatement<QName, CaseStatement>> stmt) {
+    public final void onStatementAdded(final Mutable<QName, CaseStatement, CaseEffectiveStatement> stmt) {
         stmt.coerceParentContext().addToNs(ChildSchemaNodeNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
 
@@ -41,8 +39,8 @@ abstract class AbstractCaseStatementSupport
     }
 
     @Override
-    public final EffectiveStatement<QName, CaseStatement> createEffective(
-            final StmtContext<QName, CaseStatement, EffectiveStatement<QName, CaseStatement>> ctx) {
+    public final CaseEffectiveStatement createEffective(
+            final StmtContext<QName, CaseStatement, CaseEffectiveStatement> ctx) {
         return new CaseEffectiveStatementImpl(ctx);
     }
 }
\ No newline at end of file
index 757794cf401aedebe6b3c12b0e0561c8c21abf79..1effe416762e518fe449eee18410bcacad5744d4 100644 (file)
@@ -12,7 +12,6 @@ import java.util.Optional;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.CaseSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.DerivableSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.CaseEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.CaseStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractEffectiveSimpleDataNodeContainer;
@@ -24,7 +23,7 @@ final class CaseEffectiveStatementImpl extends AbstractEffectiveSimpleDataNodeCo
     private final CaseSchemaNode original;
     private final boolean configuration;
 
-    CaseEffectiveStatementImpl(final StmtContext<QName, CaseStatement, EffectiveStatement<QName, CaseStatement>> ctx) {
+    CaseEffectiveStatementImpl(final StmtContext<QName, CaseStatement, CaseEffectiveStatement> ctx) {
         super(ctx);
         this.original = (CaseSchemaNode) ctx.getOriginalCtx().map(StmtContext::buildEffective).orElse(null);
 
index 7f78ccf92362ad6b3d79ca679599be14f79e5dd4..3606979c797db9470ddc11f075e3e16690645f30 100644 (file)
@@ -10,8 +10,8 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.choice;
 import java.util.Optional;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
+import org.opendaylight.yangtools.yang.model.api.stmt.ChoiceEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ChoiceStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
 import org.opendaylight.yangtools.yang.parser.rfc7950.reactor.YangValidationBundles;
@@ -22,8 +22,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 
-abstract class AbstractChoiceStatementSupport extends
-        AbstractQNameStatementSupport<ChoiceStatement, EffectiveStatement<QName, ChoiceStatement>>
+abstract class AbstractChoiceStatementSupport
+        extends AbstractQNameStatementSupport<ChoiceStatement, ChoiceEffectiveStatement>
         implements ImplicitParentAwareStatementSupport {
     AbstractChoiceStatementSupport() {
         super(YangStmtMapping.CHOICE);
@@ -43,8 +43,7 @@ abstract class AbstractChoiceStatementSupport extends
     }
 
     @Override
-    public final void onStatementAdded(
-            final Mutable<QName, ChoiceStatement, EffectiveStatement<QName, ChoiceStatement>> stmt) {
+    public final void onStatementAdded(final Mutable<QName, ChoiceStatement, ChoiceEffectiveStatement> stmt) {
         stmt.coerceParentContext().addToNs(ChildSchemaNodeNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
 
@@ -54,8 +53,8 @@ abstract class AbstractChoiceStatementSupport extends
     }
 
     @Override
-    public final EffectiveStatement<QName, ChoiceStatement> createEffective(
-            final StmtContext<QName, ChoiceStatement, EffectiveStatement<QName, ChoiceStatement>> ctx) {
+    public final ChoiceEffectiveStatement createEffective(
+            final StmtContext<QName, ChoiceStatement, ChoiceEffectiveStatement> ctx) {
         return new ChoiceEffectiveStatementImpl(ctx);
     }
 
index 5974156c99f5c0d84c43aa3d922169589a208fd0..cc92780e9763303decdc51a59f8ae0608c4fdd5c 100644 (file)
@@ -39,8 +39,7 @@ final class ChoiceEffectiveStatementImpl extends AbstractEffectiveDataSchemaNode
     private final ChoiceSchemaNode original;
     private final boolean mandatory;
 
-    ChoiceEffectiveStatementImpl(
-            final StmtContext<QName, ChoiceStatement, EffectiveStatement<QName, ChoiceStatement>> ctx) {
+    ChoiceEffectiveStatementImpl(final StmtContext<QName, ChoiceStatement, ChoiceEffectiveStatement> ctx) {
         super(ctx);
         this.original = (ChoiceSchemaNode) ctx.getOriginalCtx().map(StmtContext::buildEffective).orElse(null);
 
index a09e22dd586987dd270d699b1c198e111d7c6714..dc4079d8b85a82811e6d4bfd78b7f73dd263bc94 100644 (file)
@@ -8,15 +8,15 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.config;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.ConfigEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ConfigStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.ArgumentUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class ConfigStatementSupport extends
-    AbstractStatementSupport<Boolean, ConfigStatement, EffectiveStatement<Boolean, ConfigStatement>> {
+public final class ConfigStatementSupport
+        extends AbstractStatementSupport<Boolean, ConfigStatement, ConfigEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.CONFIG).build();
     private static final ConfigStatementSupport INSTANCE = new ConfigStatementSupport();
@@ -48,9 +48,9 @@ public final class ConfigStatementSupport extends
     }
 
     @Override
-    public EffectiveStatement<Boolean, ConfigStatement> createEffective(
-            final StmtContext<Boolean, ConfigStatement, EffectiveStatement<Boolean, ConfigStatement>> ctx) {
-        final EffectiveStatement<Boolean, ConfigStatement> ret = new ConfigEffectiveStatementImpl(ctx);
+    public ConfigEffectiveStatement createEffective(
+            final StmtContext<Boolean, ConfigStatement, ConfigEffectiveStatement> ctx) {
+        final ConfigEffectiveStatement ret = new ConfigEffectiveStatementImpl(ctx);
         final ConfigStatement declared = ret.getDeclared();
         if (declared instanceof EmptyConfigStatement && ret.effectiveSubstatements().isEmpty()) {
             return ((EmptyConfigStatement)declared).toEffective();
index 388d033087971013bddb1df5ef209c2e37aef6e4..6af25e24c8db623956fd689843c5a542ed275a4a 100644 (file)
@@ -13,9 +13,9 @@ import java.util.Objects;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
 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.model.api.meta.StatementSource;
+import org.opendaylight.yangtools.yang.model.api.stmt.ConfigEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ConfigStatement;
 
 abstract class EmptyConfigStatement implements ConfigStatement {
@@ -26,7 +26,7 @@ abstract class EmptyConfigStatement implements ConfigStatement {
         }
 
         @Override
-        EffectiveStatement<Boolean, ConfigStatement> toEffective() {
+        ConfigEffectiveStatement toEffective() {
             return EmptyConfigEffectiveStatement.FALSE;
         }
     };
@@ -38,12 +38,12 @@ abstract class EmptyConfigStatement implements ConfigStatement {
         }
 
         @Override
-        EffectiveStatement<Boolean, ConfigStatement> toEffective() {
+        ConfigEffectiveStatement toEffective() {
             return EmptyConfigEffectiveStatement.TRUE;
         }
     };
 
-    abstract EffectiveStatement<Boolean, ConfigStatement> toEffective();
+    abstract ConfigEffectiveStatement toEffective();
 
     @Override
     public final Collection<? extends DeclaredStatement<?>> declaredSubstatements() {
index fe87e9411d7c4f6234afffb5aa7f03ec0a2a9989..04d39c06ed8218ffad186e86d58870157a0a1221 100644 (file)
@@ -22,6 +22,7 @@ import org.opendaylight.yangtools.yang.model.api.DeviateKind;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
 import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
+import org.opendaylight.yangtools.yang.model.api.stmt.DeviateEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.DeviateStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
@@ -46,8 +47,8 @@ import org.opendaylight.yangtools.yang.parser.stmt.reactor.StatementContextBase;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-abstract class AbstractDeviateStatementSupport extends AbstractStatementSupport<DeviateKind, DeviateStatement,
-        EffectiveStatement<DeviateKind, DeviateStatement>> {
+abstract class AbstractDeviateStatementSupport
+        extends AbstractStatementSupport<DeviateKind, DeviateStatement, DeviateEffectiveStatement> {
     private static final Logger LOG = LoggerFactory.getLogger(AbstractDeviateStatementSupport.class);
 
     private static final SubstatementValidator DEVIATE_NOT_SUPPORTED_SUBSTATEMENT_VALIDATOR =
@@ -110,15 +111,14 @@ abstract class AbstractDeviateStatementSupport extends AbstractStatementSupport<
     }
 
     @Override
-    public final EffectiveStatement<DeviateKind, DeviateStatement> createEffective(
-            final StmtContext<DeviateKind, DeviateStatement, EffectiveStatement<DeviateKind,
-                    DeviateStatement>> ctx) {
+    public final DeviateEffectiveStatement createEffective(
+            final StmtContext<DeviateKind, DeviateStatement, DeviateEffectiveStatement> ctx) {
         return new DeviateEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public final void onFullDefinitionDeclared(final Mutable<DeviateKind, DeviateStatement,
-            EffectiveStatement<DeviateKind, DeviateStatement>> deviateStmtCtx) {
+    public final void onFullDefinitionDeclared(
+            final Mutable<DeviateKind, DeviateStatement, DeviateEffectiveStatement> deviateStmtCtx) {
         final DeviateKind deviateKind = deviateStmtCtx.getStatementArgument();
         getSubstatementValidatorForDeviate(deviateKind).validate(deviateStmtCtx);
 
@@ -132,8 +132,8 @@ abstract class AbstractDeviateStatementSupport extends AbstractStatementSupport<
         final ModelActionBuilder deviateAction = deviateStmtCtx.newInferenceAction(
                 ModelProcessingPhase.EFFECTIVE_MODEL);
 
-        final Prerequisite<StmtContext<DeviateKind, DeviateStatement, EffectiveStatement<DeviateKind,
-                DeviateStatement>>> sourceCtxPrerequisite =
+        final Prerequisite<StmtContext<DeviateKind, DeviateStatement,
+            DeviateEffectiveStatement>> sourceCtxPrerequisite =
                 deviateAction.requiresCtx(deviateStmtCtx, ModelProcessingPhase.EFFECTIVE_MODEL);
 
         final Prerequisite<Mutable<?, ?, EffectiveStatement<?, ?>>> targetCtxPrerequisite =
@@ -211,8 +211,8 @@ abstract class AbstractDeviateStatementSupport extends AbstractStatementSupport<
         }
     }
 
-    private static boolean isDeviationSupported(final Mutable<DeviateKind, DeviateStatement,
-            EffectiveStatement<DeviateKind, DeviateStatement>> deviateStmtCtx,
+    private static boolean isDeviationSupported(
+            final Mutable<DeviateKind, DeviateStatement, DeviateEffectiveStatement> deviateStmtCtx,
             final SchemaNodeIdentifier deviationTarget) {
         final SetMultimap<QNameModule, QNameModule> modulesDeviatedByModules = deviateStmtCtx.getFromNamespace(
                 ModulesDeviatedByModules.class, SupportedModules.SUPPORTED_MODULES);
index d38acdf6de906606e0fb349c7201c6ed5576fe62..5d12279048a400c29667f9b665d9727ea0877b80 100644 (file)
@@ -9,18 +9,19 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.deviation;
 
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.DeviationEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.DeviationStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.ArgumentUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.InferenceException;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
+import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.ModuleCtxToModuleQName;
 
-public final class DeviationStatementSupport extends AbstractStatementSupport<SchemaNodeIdentifier, DeviationStatement,
-        EffectiveStatement<SchemaNodeIdentifier, DeviationStatement>> {
+public final class DeviationStatementSupport
+        extends AbstractStatementSupport<SchemaNodeIdentifier, DeviationStatement, DeviationEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .DEVIATION)
         .addOptional(YangStmtMapping.DESCRIPTION)
@@ -48,15 +49,14 @@ public final class DeviationStatementSupport extends AbstractStatementSupport<Sc
     }
 
     @Override
-    public EffectiveStatement<SchemaNodeIdentifier, DeviationStatement> createEffective(
-            final StmtContext<SchemaNodeIdentifier, DeviationStatement,
-            EffectiveStatement<SchemaNodeIdentifier, DeviationStatement>> ctx) {
+    public DeviationEffectiveStatement createEffective(
+            final StmtContext<SchemaNodeIdentifier, DeviationStatement, DeviationEffectiveStatement> ctx) {
         return new DeviationEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public void onFullDefinitionDeclared(final StmtContext.Mutable<SchemaNodeIdentifier, DeviationStatement,
-            EffectiveStatement<SchemaNodeIdentifier, DeviationStatement>> ctx) {
+    public void onFullDefinitionDeclared(
+            final Mutable<SchemaNodeIdentifier, DeviationStatement, DeviationEffectiveStatement> ctx) {
         final QNameModule currentModule = ctx.getFromNamespace(ModuleCtxToModuleQName.class,
                 ctx.getRoot());
         final QNameModule targetModule = ctx.coerceStatementArgument().getLastComponent().getModule();
index 227fb8c80fbee47a9f76fac3503a5dc8a37b65db..f087fdd9036078a754742b85b8deedbd3abb0187 100644 (file)
@@ -8,14 +8,13 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.enum_;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.EnumEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.EnumStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 
-abstract class AbstractEnumStatementSupport extends
-        AbstractStatementSupport<String, EnumStatement, EffectiveStatement<String, EnumStatement>> {
-
+abstract class AbstractEnumStatementSupport
+        extends AbstractStatementSupport<String, EnumStatement, EnumEffectiveStatement> {
     AbstractEnumStatementSupport() {
         super(YangStmtMapping.ENUM);
     }
@@ -32,8 +31,8 @@ abstract class AbstractEnumStatementSupport extends
     }
 
     @Override
-    public final EffectiveStatement<String, EnumStatement> createEffective(
-            final StmtContext<String, EnumStatement, EffectiveStatement<String, EnumStatement>> ctx) {
+    public final EnumEffectiveStatement createEffective(
+            final StmtContext<String, EnumStatement, EnumEffectiveStatement> ctx) {
         return new EnumEffectiveStatementImpl(ctx);
     }
 }
\ No newline at end of file
index 7c70922e7270275b8da8c450e798b8a137f38228..fcbd5391d6f81ec59e14894b7abb6910e0ddf606 100644 (file)
@@ -69,7 +69,7 @@ final class ExtensionEffectiveStatementImpl extends AbstractEffectiveDocumentedN
     private final boolean yin;
 
     private ExtensionEffectiveStatementImpl(
-            final StmtContext<QName, ExtensionStatement, EffectiveStatement<QName, ExtensionStatement>> ctx) {
+            final StmtContext<QName, ExtensionStatement, ExtensionEffectiveStatement> ctx) {
         super(ctx);
         this.qname = ctx.coerceStatementArgument();
         this.schemaPath = ctx.getSchemaPath().get();
@@ -94,8 +94,8 @@ final class ExtensionEffectiveStatementImpl extends AbstractEffectiveDocumentedN
      * @param ctx Statement context
      * @return A potentially under-initialized instance
      */
-    static EffectiveStatement<QName, ExtensionStatement> create(
-            final StmtContext<QName, ExtensionStatement, EffectiveStatement<QName, ExtensionStatement>> ctx) {
+    static ExtensionEffectiveStatement create(
+            final StmtContext<QName, ExtensionStatement, ExtensionEffectiveStatement> ctx) {
         // Look at the thread-local leak in case we are invoked recursively
         final ExtensionEffectiveStatementImpl existing = RecursiveObjectLeaker.lookup(ctx,
             ExtensionEffectiveStatementImpl.class);
index 8f154ac45ecfce1f304e4da8d45c531767c48f15..144b7f1cdd87973dc236de76e0351517a9ba1311 100644 (file)
@@ -10,8 +10,8 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.extension;
 import org.opendaylight.yangtools.openconfig.model.api.OpenConfigStatements;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ArgumentStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.ExtensionEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ExtensionStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.YinElementStatement;
 import org.opendaylight.yangtools.yang.parser.spi.ExtensionNamespace;
@@ -23,7 +23,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
 public final class ExtensionStatementSupport
-        extends AbstractQNameStatementSupport<ExtensionStatement, EffectiveStatement<QName, ExtensionStatement>> {
+        extends AbstractQNameStatementSupport<ExtensionStatement, ExtensionEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .EXTENSION)
         .addOptional(YangStmtMapping.ARGUMENT)
@@ -52,14 +52,14 @@ public final class ExtensionStatementSupport
     }
 
     @Override
-    public EffectiveStatement<QName, ExtensionStatement> createEffective(
-            final StmtContext<QName, ExtensionStatement, EffectiveStatement<QName,ExtensionStatement>> ctx) {
+    public ExtensionEffectiveStatement createEffective(
+            final StmtContext<QName, ExtensionStatement, ExtensionEffectiveStatement> ctx) {
         return ExtensionEffectiveStatementImpl.create(ctx);
     }
 
     @Override
     public void onStatementDefinitionDeclared(
-            final Mutable<QName, ExtensionStatement, EffectiveStatement<QName, ExtensionStatement>> stmt) {
+            final Mutable<QName, ExtensionStatement, ExtensionEffectiveStatement> stmt) {
         super.onStatementDefinitionDeclared(stmt);
 
         QName stmtName = stmt.coerceStatementArgument();
index 207805f4f99cea88308fd8abe376fa12c8b74c40..2d68cbbc956de14b638cd560b3022f0daf7eaad0 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.feature;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.FeatureEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.FeatureStatement;
 import org.opendaylight.yangtools.yang.parser.spi.FeatureNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -19,7 +19,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
 public final class FeatureStatementSupport
-        extends AbstractQNameStatementSupport<FeatureStatement, EffectiveStatement<QName, FeatureStatement>> {
+        extends AbstractQNameStatementSupport<FeatureStatement, FeatureEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.FEATURE)
         .addOptional(YangStmtMapping.DESCRIPTION)
@@ -43,8 +43,7 @@ public final class FeatureStatementSupport
     }
 
     @Override
-    public void onFullDefinitionDeclared(final Mutable<QName, FeatureStatement,
-            EffectiveStatement<QName, FeatureStatement>> stmt) {
+    public void onFullDefinitionDeclared(final Mutable<QName, FeatureStatement, FeatureEffectiveStatement> stmt) {
         super.onFullDefinitionDeclared(stmt);
         stmt.addContext(FeatureNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
@@ -55,8 +54,8 @@ public final class FeatureStatementSupport
     }
 
     @Override
-    public EffectiveStatement<QName, FeatureStatement> createEffective(
-            final StmtContext<QName, FeatureStatement, EffectiveStatement<QName, FeatureStatement>> ctx) {
+    public FeatureEffectiveStatement createEffective(
+            final StmtContext<QName, FeatureStatement, FeatureEffectiveStatement> ctx) {
         return new FeatureEffectiveStatementImpl(ctx);
     }
 
index d306c5c650fcf0df412d9ab83a1ea6e17f0b336b..7d6d5b101f9b70909ddcd11f5ec88317cc2ddb0b 100644 (file)
@@ -9,15 +9,15 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.fraction_digits;
 
 import com.google.common.collect.Range;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.FractionDigitsEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.FractionDigitsStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class FractionDigitsStatementSupport extends AbstractStatementSupport<Integer, FractionDigitsStatement,
-        EffectiveStatement<Integer, FractionDigitsStatement>> {
+public final class FractionDigitsStatementSupport
+        extends AbstractStatementSupport<Integer, FractionDigitsStatement, FractionDigitsEffectiveStatement> {
     private static final Range<Integer> FRAC_DIGITS_ALLOWED = Range.closed(1, 18);
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.FRACTION_DIGITS)
@@ -53,9 +53,8 @@ public final class FractionDigitsStatementSupport extends AbstractStatementSuppo
     }
 
     @Override
-    public EffectiveStatement<Integer, FractionDigitsStatement> createEffective(
-            final StmtContext<Integer, FractionDigitsStatement,
-            EffectiveStatement<Integer, FractionDigitsStatement>> ctx) {
+    public FractionDigitsEffectiveStatement createEffective(
+            final StmtContext<Integer, FractionDigitsStatement, FractionDigitsEffectiveStatement> ctx) {
         return new FractionDigitsEffectiveStatementImpl(ctx);
     }
 
index b2704128bce97a0b92aedc6f7ffed6cdad60e8ef..9a7ba109d500cd11d4d93c51081d548e96f4ca3d 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.grouping;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.GroupingEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.GroupingStatement;
 import org.opendaylight.yangtools.yang.parser.spi.GroupingNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -19,7 +19,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
 abstract class AbstractGroupingStatementSupport
-        extends AbstractQNameStatementSupport<GroupingStatement, EffectiveStatement<QName, GroupingStatement>> {
+        extends AbstractQNameStatementSupport<GroupingStatement, GroupingEffectiveStatement> {
 
     AbstractGroupingStatementSupport() {
         super(YangStmtMapping.GROUPING);
@@ -46,14 +46,14 @@ abstract class AbstractGroupingStatementSupport
     }
 
     @Override
-    public final EffectiveStatement<QName, GroupingStatement> createEffective(
-            final StmtContext<QName, GroupingStatement, EffectiveStatement<QName, GroupingStatement>> ctx) {
+    public final GroupingEffectiveStatement createEffective(
+            final StmtContext<QName, GroupingStatement, GroupingEffectiveStatement> ctx) {
         return new GroupingEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public final void onFullDefinitionDeclared(final Mutable<QName, GroupingStatement,
-            EffectiveStatement<QName, GroupingStatement>> stmt) {
+    public final void onFullDefinitionDeclared(
+            final Mutable<QName, GroupingStatement, GroupingEffectiveStatement> stmt) {
         super.onFullDefinitionDeclared(stmt);
 
         if (stmt != null) {
index 34d698070e6ba3dee6ccb898f067d03bb3cbb3ed..908ad243c73afb0f3a634d092b449e8e2ccdc1bc 100644 (file)
@@ -36,8 +36,7 @@ final class GroupingEffectiveStatementImpl
     private final @NonNull ImmutableSet<ActionDefinition> actions;
     private final @NonNull ImmutableSet<NotificationDefinition> notifications;
 
-    GroupingEffectiveStatementImpl(
-            final StmtContext<QName, GroupingStatement, EffectiveStatement<QName, GroupingStatement>> ctx) {
+    GroupingEffectiveStatementImpl(final StmtContext<QName, GroupingStatement, GroupingEffectiveStatement> ctx) {
         super(ctx);
 
         qname = ctx.coerceStatementArgument();
index f99b0dde45113425e6bef9fae112cfec77801d38..4ead80adc55f005506ab28cdce4ac3ab4b010662 100644 (file)
@@ -17,7 +17,7 @@ import java.util.Set;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.YangVersion;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.IfFeatureEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.IfFeatureExpr;
 import org.opendaylight.yangtools.yang.model.api.stmt.IfFeatureStatement;
 import org.opendaylight.yangtools.yang.parser.spi.FeatureNamespace;
@@ -35,8 +35,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public final class IfFeatureStatementSupport extends AbstractStatementSupport<IfFeatureExpr, IfFeatureStatement,
-        EffectiveStatement<IfFeatureExpr, IfFeatureStatement>> {
+public final class IfFeatureStatementSupport
+        extends AbstractStatementSupport<IfFeatureExpr, IfFeatureStatement, IfFeatureEffectiveStatement> {
     private static final Logger LOG = LoggerFactory.getLogger(IfFeatureStatementSupport.class);
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.IF_FEATURE)
@@ -60,8 +60,8 @@ public final class IfFeatureStatementSupport extends AbstractStatementSupport<If
     }
 
     @Override
-    public void onFullDefinitionDeclared(final Mutable<IfFeatureExpr, IfFeatureStatement,
-            EffectiveStatement<IfFeatureExpr, IfFeatureStatement>> stmt) {
+    public void onFullDefinitionDeclared(
+            final Mutable<IfFeatureExpr, IfFeatureStatement, IfFeatureEffectiveStatement> stmt) {
         super.onFullDefinitionDeclared(stmt);
 
         final ModelActionBuilder verifyFeatures = stmt.newInferenceAction(ModelProcessingPhase.EFFECTIVE_MODEL);
@@ -97,9 +97,8 @@ public final class IfFeatureStatementSupport extends AbstractStatementSupport<If
     }
 
     @Override
-    public EffectiveStatement<IfFeatureExpr, IfFeatureStatement> createEffective(
-            final StmtContext<IfFeatureExpr, IfFeatureStatement,
-            EffectiveStatement<IfFeatureExpr, IfFeatureStatement>> ctx) {
+    public IfFeatureEffectiveStatement createEffective(
+            final StmtContext<IfFeatureExpr, IfFeatureStatement, IfFeatureEffectiveStatement> ctx) {
         return new IfFeatureEffectiveStatementImpl(ctx);
     }
 
index a391c559f1d1ffb3d219500e5d033001686e7d0e..d717328d4f129ff585e02af289b8f41504598d2d 100644 (file)
@@ -14,7 +14,7 @@ import com.google.common.base.Verify;
 import java.net.URI;
 import java.util.Collection;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.ImportEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ImportStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.PrefixStatement;
 import org.opendaylight.yangtools.yang.parser.spi.PreLinkageModuleNamespace;
@@ -30,8 +30,8 @@ import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.source.ModuleNameToNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-abstract class AbstractImportStatementSupport extends
-        AbstractStatementSupport<String, ImportStatement, EffectiveStatement<String, ImportStatement>> {
+abstract class AbstractImportStatementSupport
+        extends AbstractStatementSupport<String, ImportStatement, ImportEffectiveStatement> {
     AbstractImportStatementSupport() {
         super(YangStmtMapping.IMPORT);
     }
@@ -47,14 +47,13 @@ abstract class AbstractImportStatementSupport extends
     }
 
     @Override
-    public final EffectiveStatement<String, ImportStatement> createEffective(
-            final StmtContext<String, ImportStatement, EffectiveStatement<String, ImportStatement>> ctx) {
+    public final ImportEffectiveStatement createEffective(
+            final StmtContext<String, ImportStatement, ImportEffectiveStatement> ctx) {
         return new ImportEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public final void onPreLinkageDeclared(final Mutable<String, ImportStatement,
-            EffectiveStatement<String, ImportStatement>> stmt) {
+    public final void onPreLinkageDeclared(final Mutable<String, ImportStatement, ImportEffectiveStatement> stmt) {
         /*
          * Add ModuleIdentifier of a module which is required by this module.
          * Based on this information, required modules are searched from library
@@ -93,8 +92,7 @@ abstract class AbstractImportStatementSupport extends
     }
 
     @Override
-    public final void onLinkageDeclared(
-            final Mutable<String, ImportStatement, EffectiveStatement<String, ImportStatement>> stmt) {
+    public final void onLinkageDeclared(final Mutable<String, ImportStatement, ImportEffectiveStatement> stmt) {
         if (stmt.isEnabledSemanticVersioning()) {
             SemanticVersionImport.onLinkageDeclared(stmt);
         } else {
index af067a260c048712ad8fd8d4bdf4907dc94bd4a5..cca75d2b78902f7a309582cf924b79ee97651be0 100644 (file)
@@ -16,7 +16,7 @@ import java.util.Collection;
 import java.util.Optional;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.common.Revision;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.ImportEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ImportStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.NamespaceStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.PrefixStatement;
@@ -44,8 +44,7 @@ final class RevisionImport {
         // Hidden on purpose
     }
 
-    static void onLinkageDeclared(
-            final Mutable<String, ImportStatement, EffectiveStatement<String, ImportStatement>> stmt) {
+    static void onLinkageDeclared(final Mutable<String, ImportStatement, ImportEffectiveStatement> stmt) {
         final ModelActionBuilder importAction = stmt.newInferenceAction(SOURCE_LINKAGE);
         final Prerequisite<StmtContext<?, ?, ?>> imported;
         final String moduleName = stmt.coerceStatementArgument();
index b3b4b6f7cbbc325a510c1f35a33e141ed3dc30f9..fddf91b152efb2edc7f2ead8a77fb2c1fe33d7b1 100644 (file)
@@ -18,7 +18,7 @@ import java.util.Collection;
 import java.util.Optional;
 import org.opendaylight.yangtools.concepts.SemVer;
 import org.opendaylight.yangtools.yang.common.QNameModule;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.ImportEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ImportStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.NamespaceStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.PrefixStatement;
@@ -120,8 +120,7 @@ final class SemanticVersionImport {
         // Hidden on purpose
     }
 
-    static void onLinkageDeclared(
-            final Mutable<String, ImportStatement, EffectiveStatement<String, ImportStatement>> stmt) {
+    static void onLinkageDeclared(final Mutable<String, ImportStatement, ImportEffectiveStatement> stmt) {
         final ModelActionBuilder importAction = stmt.newInferenceAction(SOURCE_LINKAGE);
         final String moduleName = stmt.coerceStatementArgument();
         final SemVer semanticVersion = stmt.getFromNamespace(SemanticVersionNamespace.class, stmt);
index e6e0b1f28cbd751841dd0dee1de373735b1d388b..f852ac01dbd9b62305039292990a5046a6d28e11 100644 (file)
@@ -14,7 +14,7 @@ import java.util.Collection;
 import java.util.Optional;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.IncludeEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.IncludeStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RevisionDateStatement;
 import org.opendaylight.yangtools.yang.model.repo.api.RevisionSourceIdentifier;
@@ -31,8 +31,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.source.IncludedModuleContext;
 import org.opendaylight.yangtools.yang.parser.spi.source.IncludedSubmoduleNameToModuleCtx;
 
-abstract class AbstractIncludeStatementSupport extends
-        AbstractStatementSupport<String, IncludeStatement, EffectiveStatement<String, IncludeStatement>> {
+abstract class AbstractIncludeStatementSupport
+        extends AbstractStatementSupport<String, IncludeStatement, IncludeEffectiveStatement> {
 
     AbstractIncludeStatementSupport() {
         super(YangStmtMapping.INCLUDE);
@@ -49,14 +49,13 @@ abstract class AbstractIncludeStatementSupport extends
     }
 
     @Override
-    public final EffectiveStatement<String, IncludeStatement> createEffective(
-            final StmtContext<String, IncludeStatement, EffectiveStatement<String, IncludeStatement>> ctx) {
+    public final IncludeEffectiveStatement createEffective(
+            final StmtContext<String, IncludeStatement, IncludeEffectiveStatement> ctx) {
         return new IncludeEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public final void onPreLinkageDeclared(
-            final Mutable<String, IncludeStatement, EffectiveStatement<String, IncludeStatement>> stmt) {
+    public final void onPreLinkageDeclared(final Mutable<String, IncludeStatement, IncludeEffectiveStatement> stmt) {
         final StmtContext<Revision, ?, ?> revision = findFirstDeclaredSubstatement(stmt,
             RevisionDateStatement.class);
         stmt.addRequiredSource(revision == null ? RevisionSourceIdentifier.create(stmt.getStatementArgument())
@@ -64,8 +63,7 @@ abstract class AbstractIncludeStatementSupport extends
     }
 
     @Override
-    public final void onLinkageDeclared(
-            final Mutable<String, IncludeStatement, EffectiveStatement<String, IncludeStatement>> stmt) {
+    public final void onLinkageDeclared(final Mutable<String, IncludeStatement, IncludeEffectiveStatement> stmt) {
         final String submoduleName = stmt.coerceStatementArgument();
         final StmtContext<Revision, ?, ?> revision = findFirstDeclaredSubstatement(stmt,
             RevisionDateStatement.class);
index 2ba945b2d2e2f020a9a4a9af3c5e64d15acf17a8..9a061c6a6d305d457eb57e705ed768e1062c52b9 100644 (file)
@@ -10,7 +10,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.input;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.YangConstants;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.InputEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.InputStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -19,7 +19,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 
 abstract class AbstractInputStatementSupport
-        extends AbstractQNameStatementSupport<InputStatement, EffectiveStatement<QName, InputStatement>> {
+        extends AbstractQNameStatementSupport<InputStatement, InputEffectiveStatement> {
     AbstractInputStatementSupport() {
         super(YangStmtMapping.INPUT);
     }
@@ -30,8 +30,7 @@ abstract class AbstractInputStatementSupport
     }
 
     @Override
-    public final void onStatementAdded(final Mutable<QName, InputStatement,
-            EffectiveStatement<QName, InputStatement>> stmt) {
+    public final void onStatementAdded(final Mutable<QName, InputStatement, InputEffectiveStatement> stmt) {
         stmt.coerceParentContext().addToNs(ChildSchemaNodeNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
 
@@ -41,8 +40,8 @@ abstract class AbstractInputStatementSupport
     }
 
     @Override
-    public final EffectiveStatement<QName, InputStatement> createEffective(
-            final StmtContext<QName, InputStatement, EffectiveStatement<QName, InputStatement>> ctx) {
+    public final InputEffectiveStatement createEffective(
+            final StmtContext<QName, InputStatement, InputEffectiveStatement> ctx) {
         return new InputEffectiveStatementImpl(ctx);
     }
 }
\ No newline at end of file
index 2e75ffd26fa1892a3f8467f75a2629f53c340256..596cd36df5807b31f80d057e202d0fe0277864e5 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.input;
 
 import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.InputEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.InputStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractEffectiveOperationContainerSchemaNode;
@@ -16,8 +15,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 
 final class InputEffectiveStatementImpl extends AbstractEffectiveOperationContainerSchemaNode<InputStatement>
         implements InputEffectiveStatement {
-    InputEffectiveStatementImpl(
-            final StmtContext<QName, InputStatement, EffectiveStatement<QName, InputStatement>> ctx) {
+    InputEffectiveStatementImpl(final StmtContext<QName, InputStatement, InputEffectiveStatement> ctx) {
         super(ctx);
     }
 }
index 66bfbf576147ca7247c6626409386ac85df7b541..55ed75230bee93d34b02eea614404f406f1f8a24 100644 (file)
@@ -14,7 +14,7 @@ import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.LengthEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.LengthStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.UnresolvedNumber;
 import org.opendaylight.yangtools.yang.model.api.stmt.ValueRange;
@@ -25,8 +25,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class LengthStatementSupport extends AbstractStatementSupport<List<ValueRange>, LengthStatement,
-        EffectiveStatement<List<ValueRange>, LengthStatement>> {
+public final class LengthStatementSupport
+        extends AbstractStatementSupport<List<ValueRange>, LengthStatement, LengthEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .LENGTH)
         .addOptional(YangStmtMapping.DESCRIPTION)
@@ -81,9 +81,8 @@ public final class LengthStatementSupport extends AbstractStatementSupport<List<
     }
 
     @Override
-    public EffectiveStatement<List<ValueRange>, LengthStatement> createEffective(
-            final StmtContext<List<ValueRange>, LengthStatement, EffectiveStatement<List<ValueRange>,
-                    LengthStatement>> ctx) {
+    public LengthEffectiveStatement createEffective(
+            final StmtContext<List<ValueRange>, LengthStatement, LengthEffectiveStatement> ctx) {
         return new LengthEffectiveStatementImpl(ctx);
     }
 
index 0da052f1d7960591ddea54e9c347be1b4dc95b9a..37890c9eafe4c395d5c733f0539d36867ea3af06 100644 (file)
@@ -8,14 +8,14 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.max_elements;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.MaxElementsEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.MaxElementsStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class MaxElementsStatementSupport extends
-        AbstractStatementSupport<String, MaxElementsStatement, EffectiveStatement<String, MaxElementsStatement>> {
+public final class MaxElementsStatementSupport
+        extends AbstractStatementSupport<String, MaxElementsStatement, MaxElementsEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.MAX_ELEMENTS)
         .build();
@@ -41,8 +41,8 @@ public final class MaxElementsStatementSupport extends
     }
 
     @Override
-    public EffectiveStatement<String, MaxElementsStatement> createEffective(
-            final StmtContext<String, MaxElementsStatement, EffectiveStatement<String, MaxElementsStatement>> ctx) {
+    public MaxElementsEffectiveStatement createEffective(
+            final StmtContext<String, MaxElementsStatement, MaxElementsEffectiveStatement> ctx) {
         return new MaxElementsEffectiveStatementImpl(ctx);
     }
 
index 8a913b6386f5669e52fdd09b3c86cdb9abe27d7b..e8cd39023129b74c476b902f1d03a0e64ff27a4f 100644 (file)
@@ -8,14 +8,14 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.min_elements;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.MinElementsEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.MinElementsStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class MinElementsStatementSupport extends
-        AbstractStatementSupport<Integer, MinElementsStatement, EffectiveStatement<Integer, MinElementsStatement>> {
+public final class MinElementsStatementSupport
+        extends AbstractStatementSupport<Integer, MinElementsStatement, MinElementsEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.MIN_ELEMENTS)
         .build();
@@ -35,15 +35,13 @@ public final class MinElementsStatementSupport extends
     }
 
     @Override
-    public MinElementsStatement createDeclared(
-            final StmtContext<Integer, MinElementsStatement, ?> ctx) {
+    public MinElementsStatement createDeclared(final StmtContext<Integer, MinElementsStatement, ?> ctx) {
         return new MinElementsStatementImpl(ctx);
     }
 
     @Override
-    public EffectiveStatement<Integer, MinElementsStatement> createEffective(
-            final StmtContext<Integer, MinElementsStatement,
-            EffectiveStatement<Integer, MinElementsStatement>> ctx) {
+    public MinElementsEffectiveStatement createEffective(
+            final StmtContext<Integer, MinElementsStatement, MinElementsEffectiveStatement> ctx) {
         return new MinElementsEffectiveStatementImpl(ctx);
     }
 
index ff3a9bdb234a7a0a3f955643381a1578416b5cb1..2af16de950c779595bafcb6b72106c69dcd15660 100644 (file)
@@ -8,7 +8,7 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.modifier;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.ModifierEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ModifierStatement;
 import org.opendaylight.yangtools.yang.model.api.type.ModifierKind;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
@@ -16,8 +16,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class ModifierStatementSupport extends AbstractStatementSupport<ModifierKind, ModifierStatement,
-        EffectiveStatement<ModifierKind, ModifierStatement>> {
+public final class ModifierStatementSupport
+        extends AbstractStatementSupport<ModifierKind, ModifierStatement, ModifierEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.MODIFIER).build();
     private static final ModifierStatementSupport INSTANCE = new ModifierStatementSupport();
@@ -42,9 +42,8 @@ public final class ModifierStatementSupport extends AbstractStatementSupport<Mod
     }
 
     @Override
-    public EffectiveStatement<ModifierKind, ModifierStatement> createEffective(
-            final StmtContext<ModifierKind, ModifierStatement,
-            EffectiveStatement<ModifierKind, ModifierStatement>> ctx) {
+    public ModifierEffectiveStatement createEffective(
+            final StmtContext<ModifierKind, ModifierStatement, ModifierEffectiveStatement> ctx) {
         return new ModifierEffectiveStatementImpl(ctx);
     }
 
index ab48a176fcb0bd56a7971228067dafde2188791a..bdaf2fbbef96f7e2eb7734a8926138f2fbf225cc 100644 (file)
@@ -9,15 +9,15 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.must;
 
 import org.opendaylight.yangtools.yang.model.api.RevisionAwareXPath;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.MustEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.MustStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.ArgumentUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class MustStatementSupport extends AbstractStatementSupport<RevisionAwareXPath, MustStatement,
-        EffectiveStatement<RevisionAwareXPath, MustStatement>> {
+public final class MustStatementSupport
+        extends AbstractStatementSupport<RevisionAwareXPath, MustStatement, MustEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .MUST)
         .addOptional(YangStmtMapping.DESCRIPTION)
@@ -46,9 +46,8 @@ public final class MustStatementSupport extends AbstractStatementSupport<Revisio
     }
 
     @Override
-    public EffectiveStatement<RevisionAwareXPath, MustStatement> createEffective(
-            final StmtContext<RevisionAwareXPath, MustStatement,
-            EffectiveStatement<RevisionAwareXPath, MustStatement>> ctx) {
+    public MustEffectiveStatement createEffective(
+            final StmtContext<RevisionAwareXPath, MustStatement, MustEffectiveStatement> ctx) {
         return new MustEffectiveStatementImpl(ctx);
     }
 
index 6ff02e6d85d2910ac0908c88124a6e932b30e636..9dbbd4b9fb480c66ff10d07f4ad84e50e3e07f2e 100644 (file)
@@ -9,14 +9,14 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.namespace;
 
 import java.net.URI;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.NamespaceEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.NamespaceStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class NamespaceStatementSupport extends AbstractStatementSupport<URI, NamespaceStatement,
-        EffectiveStatement<URI, NamespaceStatement>> {
+public final class NamespaceStatementSupport
+        extends AbstractStatementSupport<URI, NamespaceStatement, NamespaceEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .NAMESPACE)
         .build();
@@ -41,8 +41,8 @@ public final class NamespaceStatementSupport extends AbstractStatementSupport<UR
     }
 
     @Override
-    public EffectiveStatement<URI,NamespaceStatement> createEffective(
-            final StmtContext<URI, NamespaceStatement, EffectiveStatement<URI, NamespaceStatement>> ctx) {
+    public NamespaceEffectiveStatement createEffective(
+            final StmtContext<URI, NamespaceStatement, NamespaceEffectiveStatement> ctx) {
         return new NamespaceEffectiveStatementImpl(ctx);
     }
 
index e11a152a60dcd37a0030369abe85a46cd5019869..0c563e34949955022088dd756b38c20f16b34076 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.notification;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.NotificationEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.NotificationStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 
 abstract class AbstractNotificationStatementSupport
-        extends AbstractQNameStatementSupport<NotificationStatement, EffectiveStatement<QName, NotificationStatement>> {
+        extends AbstractQNameStatementSupport<NotificationStatement, NotificationEffectiveStatement> {
     AbstractNotificationStatementSupport() {
         super(YangStmtMapping.NOTIFICATION);
     }
@@ -30,7 +30,7 @@ abstract class AbstractNotificationStatementSupport
 
     @Override
     public final void onStatementAdded(
-            final Mutable<QName, NotificationStatement, EffectiveStatement<QName, NotificationStatement>> stmt) {
+            final Mutable<QName, NotificationStatement, NotificationEffectiveStatement> stmt) {
         stmt.coerceParentContext().addToNs(ChildSchemaNodeNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
 
index 5a198a07023c634a7153b86187f44d32e75c0a9f..f112eeefa9b1fbf246b2020aaf5ed52c8b6e4e17 100644 (file)
@@ -51,7 +51,7 @@ final class NotificationEffectiveStatementImpl
     private volatile ImmutableSet<MustDefinition> mustConstraints;
 
     NotificationEffectiveStatementImpl(
-            final StmtContext<QName, NotificationStatement, EffectiveStatement<QName, NotificationStatement>> ctx) {
+            final StmtContext<QName, NotificationStatement, NotificationEffectiveStatement> ctx) {
         super(ctx);
         this.qname = ctx.coerceStatementArgument();
         this.path = ctx.getSchemaPath().get();
index b8f3eeb84582438879da4aef4b4107709c79baf7..4f6d39096273b5473295166b058f9554e0dd16f4 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.notification;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.NotificationEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.NotificationStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
@@ -42,8 +42,8 @@ public final class NotificationStatementRFC6020Support extends AbstractNotificat
     }
 
     @Override
-    public EffectiveStatement<QName, NotificationStatement> createEffective(
-            final StmtContext<QName, NotificationStatement, EffectiveStatement<QName, NotificationStatement>> ctx) {
+    public NotificationEffectiveStatement createEffective(
+            final StmtContext<QName, NotificationStatement, NotificationEffectiveStatement> ctx) {
         return new NotificationEffectiveStatementImpl(ctx);
     }
 
index 6125160cf219382f7d2a60af3382f3f69b78a72d..e038113d21906e53e946ce658bc0439232559a40 100644 (file)
@@ -11,8 +11,8 @@ import com.google.common.annotations.Beta;
 import com.google.common.collect.ImmutableSet;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
+import org.opendaylight.yangtools.yang.model.api.stmt.NotificationEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.NotificationStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
@@ -57,8 +57,8 @@ public final class NotificationStatementRFC7950Support extends AbstractNotificat
     }
 
     @Override
-    public EffectiveStatement<QName, NotificationStatement> createEffective(
-            final StmtContext<QName, NotificationStatement, EffectiveStatement<QName, NotificationStatement>> ctx) {
+    public NotificationEffectiveStatement createEffective(
+            final StmtContext<QName, NotificationStatement, NotificationEffectiveStatement> ctx) {
         SourceException.throwIf(StmtContextUtils.hasAncestorOfType(ctx, ILLEGAL_PARENTS),
             ctx.getStatementSourceReference(),
             "Notification %s is defined within an rpc, action, or another notification",
index 57c1b78a5fbecbe9a48b2965dae715f81b1f1bd1..34170bedf88e595c32aeb65411c60335b689f77f 100644 (file)
@@ -10,7 +10,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.output;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.YangConstants;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.OutputEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.OutputStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -18,8 +18,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 
-abstract class AbstractOutputStatementSupport extends
-        AbstractQNameStatementSupport<OutputStatement, EffectiveStatement<QName, OutputStatement>> {
+abstract class AbstractOutputStatementSupport
+        extends AbstractQNameStatementSupport<OutputStatement, OutputEffectiveStatement> {
     AbstractOutputStatementSupport() {
         super(YangStmtMapping.OUTPUT);
     }
@@ -30,8 +30,7 @@ abstract class AbstractOutputStatementSupport extends
     }
 
     @Override
-    public final void onStatementAdded(final Mutable<QName, OutputStatement,
-            EffectiveStatement<QName, OutputStatement>> stmt) {
+    public final void onStatementAdded(final Mutable<QName, OutputStatement, OutputEffectiveStatement> stmt) {
         stmt.coerceParentContext().addToNs(ChildSchemaNodeNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
 
@@ -41,8 +40,8 @@ abstract class AbstractOutputStatementSupport extends
     }
 
     @Override
-    public final EffectiveStatement<QName, OutputStatement> createEffective(
-            final StmtContext<QName, OutputStatement, EffectiveStatement<QName, OutputStatement>> ctx) {
+    public final OutputEffectiveStatement createEffective(
+            final StmtContext<QName, OutputStatement, OutputEffectiveStatement> ctx) {
         return new OutputEffectiveStatementImpl(ctx);
     }
 }
\ No newline at end of file
index 2a4cae27ffcc3fdf2965acc6c39ad5833d6f727b..5b449c0a87151f69be53e6afd3bb7a570972287d 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.output;
 
 import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.OutputEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.OutputStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractEffectiveOperationContainerSchemaNode;
@@ -16,8 +15,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 
 final class OutputEffectiveStatementImpl extends AbstractEffectiveOperationContainerSchemaNode<OutputStatement>
         implements OutputEffectiveStatement {
-    OutputEffectiveStatementImpl(
-            final StmtContext<QName, OutputStatement, EffectiveStatement<QName, OutputStatement>> ctx) {
+    OutputEffectiveStatementImpl(final StmtContext<QName, OutputStatement, OutputEffectiveStatement> ctx) {
         super(ctx);
     }
 }
index 2bf55f76bf195fda6c189e3f6e47914ef9b82f67..7928662f0e29c3885f3d7a2596717ef95fe1bdb3 100644 (file)
@@ -11,14 +11,14 @@ import static java.util.Objects.requireNonNull;
 
 import org.opendaylight.yangtools.yang.model.api.PathExpression;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.PathEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.PathStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class PathStatementSupport extends AbstractStatementSupport<PathExpression, PathStatement,
-        EffectiveStatement<PathExpression, PathStatement>> {
+public final class PathStatementSupport
+        extends AbstractStatementSupport<PathExpression, PathStatement, PathEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.PATH).build();
     private static final PathStatementSupport LENIENT_INSTANCE = new PathStatementSupport(
@@ -52,8 +52,8 @@ public final class PathStatementSupport extends AbstractStatementSupport<PathExp
     }
 
     @Override
-    public EffectiveStatement<PathExpression, PathStatement> createEffective(
-            final StmtContext<PathExpression, PathStatement, EffectiveStatement<PathExpression, PathStatement>> ctx) {
+    public PathEffectiveStatement createEffective(
+            final StmtContext<PathExpression, PathStatement, PathEffectiveStatement> ctx) {
         return new PathEffectiveStatementImpl(ctx);
     }
 
index 814fbafecc39a45c4b44ac7ab1f8046cda7ad075..9670200dee0498aee0f23301ad605f2f7671470a 100644 (file)
@@ -11,7 +11,7 @@ import java.util.Optional;
 import java.util.regex.Pattern;
 import java.util.regex.PatternSyntaxException;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.PatternEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.PatternStatement;
 import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
 import org.opendaylight.yangtools.yang.model.util.RegexUtils;
@@ -20,8 +20,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-abstract class AbstractPatternStatementSupport extends AbstractStatementSupport<PatternConstraint, PatternStatement,
-        EffectiveStatement<PatternConstraint, PatternStatement>> {
+abstract class AbstractPatternStatementSupport
+        extends AbstractStatementSupport<PatternConstraint, PatternStatement, PatternEffectiveStatement> {
     private static final Logger LOG = LoggerFactory.getLogger(AbstractPatternStatementSupport.class);
 
     AbstractPatternStatementSupport() {
@@ -48,9 +48,8 @@ abstract class AbstractPatternStatementSupport extends AbstractStatementSupport<
     }
 
     @Override
-    public final EffectiveStatement<PatternConstraint, PatternStatement> createEffective(
-            final StmtContext<PatternConstraint, PatternStatement,
-            EffectiveStatement<PatternConstraint, PatternStatement>> ctx) {
+    public final PatternEffectiveStatement createEffective(
+            final StmtContext<PatternConstraint, PatternStatement, PatternEffectiveStatement> ctx) {
         return new PatternEffectiveStatementImpl(ctx);
     }
 }
\ No newline at end of file
index c8f33e4073b20ab3c0945a7a8d35908e16071b44..72c0bfeb7697733a35539270a8a3941a35a8f3e1 100644 (file)
@@ -8,7 +8,7 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.position;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.PositionEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.PositionStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
@@ -16,7 +16,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
 public final class PositionStatementSupport
-        extends AbstractStatementSupport<Long, PositionStatement, EffectiveStatement<Long, PositionStatement>> {
+        extends AbstractStatementSupport<Long, PositionStatement, PositionEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.POSITION).build();
     private static final PositionStatementSupport INSTANCE = new PositionStatementSupport();
@@ -45,8 +45,8 @@ public final class PositionStatementSupport
     }
 
     @Override
-    public EffectiveStatement<Long, PositionStatement> createEffective(
-            final StmtContext<Long, PositionStatement, EffectiveStatement<Long, PositionStatement>> ctx) {
+    public PositionEffectiveStatement createEffective(
+            final StmtContext<Long, PositionStatement, PositionEffectiveStatement> ctx) {
         return new PositionEffectiveStatementImpl(ctx);
     }
 
index 77ac3a64e4489cb49db5438f3bdfbcbab5b7d481..bb74845c3e5c29891b893f5fffd91f0ca44cfb39 100644 (file)
@@ -15,7 +15,7 @@ import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.RangeEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RangeStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.UnresolvedNumber;
 import org.opendaylight.yangtools.yang.model.api.stmt.ValueRange;
@@ -26,8 +26,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class RangeStatementSupport extends AbstractStatementSupport<List<ValueRange>, RangeStatement,
-        EffectiveStatement<List<ValueRange>, RangeStatement>> {
+public final class RangeStatementSupport
+        extends AbstractStatementSupport<List<ValueRange>, RangeStatement, RangeEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .RANGE)
         .addOptional(YangStmtMapping.DESCRIPTION)
@@ -82,9 +82,8 @@ public final class RangeStatementSupport extends AbstractStatementSupport<List<V
     }
 
     @Override
-    public EffectiveStatement<List<ValueRange>, RangeStatement> createEffective(
-            final StmtContext<List<ValueRange>, RangeStatement, EffectiveStatement<List<ValueRange>,
-                    RangeStatement>> ctx) {
+    public RangeEffectiveStatement createEffective(
+            final StmtContext<List<ValueRange>, RangeStatement, RangeEffectiveStatement> ctx) {
         return new RangeEffectiveStatementImpl(ctx);
     }
 
index c914b20359d74695b9ee12c1654a564e1af5cbf6..2ff1b67e11cb91f03644afdd3246ca32bdbeb4d7 100644 (file)
@@ -8,15 +8,15 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.refine;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.RefineEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RefineStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.ArgumentUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 
-abstract class AbstractRefineStatementSupport extends AbstractStatementSupport<SchemaNodeIdentifier, RefineStatement,
-        EffectiveStatement<SchemaNodeIdentifier, RefineStatement>> {
+abstract class AbstractRefineStatementSupport
+        extends AbstractStatementSupport<SchemaNodeIdentifier, RefineStatement, RefineEffectiveStatement> {
 
     AbstractRefineStatementSupport() {
         super(YangStmtMapping.REFINE);
@@ -33,9 +33,8 @@ abstract class AbstractRefineStatementSupport extends AbstractStatementSupport<S
     }
 
     @Override
-    public final EffectiveStatement<SchemaNodeIdentifier, RefineStatement> createEffective(
-            final StmtContext<SchemaNodeIdentifier, RefineStatement,
-            EffectiveStatement<SchemaNodeIdentifier, RefineStatement>> ctx) {
+    public final RefineEffectiveStatement createEffective(
+            final StmtContext<SchemaNodeIdentifier, RefineStatement, RefineEffectiveStatement> ctx) {
         return new RefineEffectiveStatementImpl(ctx);
     }
 }
\ No newline at end of file
index 7394423fe7b9c97f34a402ea441cbc5241f3bf81..cc6c909d872dc7151ecaa9604289da5fe4b983b9 100644 (file)
@@ -8,15 +8,15 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.require_instance;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.RequireInstanceEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RequireInstanceStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.ArgumentUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class RequireInstanceStatementSupport extends AbstractStatementSupport<Boolean, RequireInstanceStatement,
-        EffectiveStatement<Boolean, RequireInstanceStatement>> {
+public final class RequireInstanceStatementSupport
+        extends AbstractStatementSupport<Boolean, RequireInstanceStatement, RequireInstanceEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.REQUIRE_INSTANCE).build();
     private static final RequireInstanceStatementSupport INSTANCE = new RequireInstanceStatementSupport();
@@ -40,9 +40,8 @@ public final class RequireInstanceStatementSupport extends AbstractStatementSupp
     }
 
     @Override
-    public EffectiveStatement<Boolean, RequireInstanceStatement> createEffective(
-            final StmtContext<Boolean, RequireInstanceStatement,
-            EffectiveStatement<Boolean, RequireInstanceStatement>> ctx) {
+    public RequireInstanceEffectiveStatement createEffective(
+            final StmtContext<Boolean, RequireInstanceStatement, RequireInstanceEffectiveStatement> ctx) {
         return new RequireInstanceEffectiveStatementImpl(ctx);
     }
 
index 8cf4c1c37ceca14e3a090371022e7aac32cacc2f..faf7dae55fc83490a1038a37f6372ff789687345 100644 (file)
@@ -10,15 +10,15 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.revision;
 import java.time.format.DateTimeParseException;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.RevisionEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RevisionStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class RevisionStatementSupport extends
-        AbstractStatementSupport<Revision, RevisionStatement, EffectiveStatement<Revision, RevisionStatement>> {
+public final class RevisionStatementSupport
+        extends AbstractStatementSupport<Revision, RevisionStatement, RevisionEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.REVISION)
             .addOptional(YangStmtMapping.DESCRIPTION)
@@ -50,8 +50,8 @@ public final class RevisionStatementSupport extends
     }
 
     @Override
-    public EffectiveStatement<Revision, RevisionStatement> createEffective(
-            final StmtContext<Revision, RevisionStatement, EffectiveStatement<Revision, RevisionStatement>> ctx) {
+    public RevisionEffectiveStatement createEffective(
+            final StmtContext<Revision, RevisionStatement, RevisionEffectiveStatement> ctx) {
         return new RevisionEffectiveStatementImpl(ctx);
     }
 
index dc4948ff3523c54f2ffc751c6d9405d94351bd80..8fa8e7840b1c7e5a454dcf907fa9aadd329f1391 100644 (file)
@@ -10,15 +10,15 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.revision_date;
 import java.time.format.DateTimeParseException;
 import org.opendaylight.yangtools.yang.common.Revision;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.RevisionDateEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RevisionDateStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class RevisionDateStatementSupport extends AbstractStatementSupport<Revision, RevisionDateStatement,
-        EffectiveStatement<Revision, RevisionDateStatement>> {
+public final class RevisionDateStatementSupport
+        extends AbstractStatementSupport<Revision, RevisionDateStatement, RevisionDateEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR =
             SubstatementValidator.builder(YangStmtMapping.REVISION_DATE).build();
     private static final RevisionDateStatementSupport INSTANCE = new RevisionDateStatementSupport();
@@ -47,8 +47,8 @@ public final class RevisionDateStatementSupport extends AbstractStatementSupport
     }
 
     @Override
-    public EffectiveStatement<Revision, RevisionDateStatement> createEffective(final StmtContext<Revision,
-            RevisionDateStatement, EffectiveStatement<Revision, RevisionDateStatement>> ctx) {
+    public RevisionDateEffectiveStatement createEffective(
+            final StmtContext<Revision, RevisionDateStatement, RevisionDateEffectiveStatement> ctx) {
         return new RevisionDateEffectiveStatementImpl(ctx);
     }
 
index 13cead2e9740c8ddc2643bac15efdff77be5aa73..f6027b85de46ba104534d933764f50d250f9f7ba 100644 (file)
@@ -9,9 +9,9 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.rpc;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.InputStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.OutputStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.RpcEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RpcStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -23,7 +23,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.stmt.reactor.StatementContextBase;
 
 abstract class AbstractRpcStatementSupport
-        extends AbstractQNameStatementSupport<RpcStatement, EffectiveStatement<QName, RpcStatement>> {
+        extends AbstractQNameStatementSupport<RpcStatement, RpcEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.RPC)
         .addOptional(YangStmtMapping.DESCRIPTION)
@@ -46,8 +46,7 @@ abstract class AbstractRpcStatementSupport
     }
 
     @Override
-    public final void onStatementAdded(
-            final Mutable<QName, RpcStatement, EffectiveStatement<QName, RpcStatement>> stmt) {
+    public final void onStatementAdded(final Mutable<QName, RpcStatement, RpcEffectiveStatement> stmt) {
         stmt.coerceParentContext().addToNs(ChildSchemaNodeNamespace.class, stmt.coerceStatementArgument(), stmt);
     }
 
@@ -57,14 +56,13 @@ abstract class AbstractRpcStatementSupport
     }
 
     @Override
-    public final EffectiveStatement<QName, RpcStatement> createEffective(
-            final StmtContext<QName, RpcStatement, EffectiveStatement<QName, RpcStatement>> ctx) {
+    public final RpcEffectiveStatement createEffective(
+            final StmtContext<QName, RpcStatement, RpcEffectiveStatement> ctx) {
         return new RpcEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public final void onFullDefinitionDeclared(
-            final Mutable<QName, RpcStatement, EffectiveStatement<QName, RpcStatement>> stmt) {
+    public final void onFullDefinitionDeclared(final Mutable<QName, RpcStatement, RpcEffectiveStatement> stmt) {
         super.onFullDefinitionDeclared(stmt);
 
         if (StmtContextUtils.findFirstDeclaredSubstatement(stmt, InputStatement.class) == null) {
index 3b963147ad67b910910a84509c612984a47b3a2b..46dafe87131851dd586f95b82ef8a17323ac9c53 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.rpc;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.RpcDefinition;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RpcEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.RpcStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractEffectiveOperationDefinition;
@@ -17,8 +16,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 
 final class RpcEffectiveStatementImpl extends AbstractEffectiveOperationDefinition<RpcStatement>
         implements RpcDefinition, RpcEffectiveStatement {
-    RpcEffectiveStatementImpl(final StmtContext<QName, RpcStatement,
-            EffectiveStatement<QName, RpcStatement>> ctx) {
+    RpcEffectiveStatementImpl(final StmtContext<QName, RpcStatement, RpcEffectiveStatement> ctx) {
         super(ctx);
     }
 }
index b63f94d44a781b891ec4630f040fe24373dc9fe3..0928b6731b778308b42a8001318bb859492e9e83 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.status;
 
 import org.opendaylight.yangtools.yang.model.api.Status;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.StatusEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.StatusStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
@@ -17,7 +17,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
 public final class StatusStatementSupport
-        extends AbstractStatementSupport<Status, StatusStatement, EffectiveStatement<Status, StatusStatement>> {
+        extends AbstractStatementSupport<Status, StatusStatement, StatusEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .STATUS)
         .build();
@@ -47,14 +47,13 @@ public final class StatusStatementSupport
     }
 
     @Override
-    public StatusStatement createDeclared(
-            final StmtContext<Status, StatusStatement, ?> ctx) {
+    public StatusStatement createDeclared(final StmtContext<Status, StatusStatement, ?> ctx) {
         return new StatusStatementImpl(ctx);
     }
 
     @Override
-    public EffectiveStatement<Status, StatusStatement> createEffective(
-            final StmtContext<Status, StatusStatement, EffectiveStatement<Status, StatusStatement>> ctx) {
+    public StatusEffectiveStatement createEffective(
+            final StmtContext<Status, StatusStatement, StatusEffectiveStatement> ctx) {
         return new StatusEffectiveStatementImpl(ctx);
     }
 
index 5c10bc419a76452f41720293defa1a00913d9a64..cff14d437c9eefef33b6b70089b750b02ef0702b 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.typedef;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.TypedefEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.TypedefStatement;
 import org.opendaylight.yangtools.yang.parser.spi.TypeNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -20,7 +20,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
 public final class TypedefStatementSupport extends
-        AbstractQNameStatementSupport<TypedefStatement, EffectiveStatement<QName, TypedefStatement>> {
+        AbstractQNameStatementSupport<TypedefStatement, TypedefEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.TYPEDEF)
         .addOptional(YangStmtMapping.DEFAULT)
@@ -61,14 +61,13 @@ public final class TypedefStatementSupport extends
     }
 
     @Override
-    public EffectiveStatement<QName, TypedefStatement> createEffective(
-            final StmtContext<QName, TypedefStatement, EffectiveStatement<QName, TypedefStatement>> ctx) {
+    public TypedefEffectiveStatement createEffective(
+            final StmtContext<QName, TypedefStatement, TypedefEffectiveStatement> ctx) {
         return new TypedefEffectiveStatementImpl(ctx);
     }
 
     @Override
-    public void onFullDefinitionDeclared(final Mutable<QName, TypedefStatement,
-            EffectiveStatement<QName, TypedefStatement>> stmt) {
+    public void onFullDefinitionDeclared(final Mutable<QName, TypedefStatement, TypedefEffectiveStatement> stmt) {
         super.onFullDefinitionDeclared(stmt);
 
         if (stmt != null) {
index 73b54d75012c113e7350218a1187dbce119797f3..8cb7cc96ddd43b9d405e754884b27ca33e08deb8 100644 (file)
@@ -14,9 +14,9 @@ import java.util.HashSet;
 import java.util.Set;
 import java.util.regex.Pattern;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Relative;
+import org.opendaylight.yangtools.yang.model.api.stmt.UniqueEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.UniqueStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.ArgumentUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
@@ -24,8 +24,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class UniqueStatementSupport extends AbstractStatementSupport<Set<Relative>, UniqueStatement,
-        EffectiveStatement<Set<Relative>, UniqueStatement>> {
+public final class UniqueStatementSupport
+        extends AbstractStatementSupport<Set<Relative>, UniqueStatement, UniqueEffectiveStatement> {
     /**
      * Support 'sep' ABNF rule in RFC7950 section 14. CRLF pattern is used to squash line-break from CRLF to LF form
      * and then we use SEP_SPLITTER, which can operate on single characters.
@@ -62,8 +62,8 @@ public final class UniqueStatementSupport extends AbstractStatementSupport<Set<R
     }
 
     @Override
-    public EffectiveStatement<Set<Relative>, UniqueStatement> createEffective(
-            final StmtContext<Set<Relative>, UniqueStatement, EffectiveStatement<Set<Relative>, UniqueStatement>> ctx) {
+    public UniqueEffectiveStatement createEffective(
+            final StmtContext<Set<Relative>, UniqueStatement, UniqueEffectiveStatement> ctx) {
         return new UniqueEffectiveStatementImpl(ctx);
     }
 
index cc5000b7389820c143055460e5394076faa0c028..c9ed32316d39b634f36c9b55525a464a9ab21164 100644 (file)
@@ -44,7 +44,7 @@ final class UsesEffectiveStatementImpl extends AbstractEffectiveDocumentedNode<Q
     private final @NonNull ImmutableSet<AugmentationSchemaNode> augmentations;
     private final @Nullable RevisionAwareXPath whenCondition;
 
-    UsesEffectiveStatementImpl(final StmtContext<QName, UsesStatement, EffectiveStatement<QName, UsesStatement>> ctx) {
+    UsesEffectiveStatementImpl(final StmtContext<QName, UsesStatement, UsesEffectiveStatement> ctx) {
         super(ctx);
 
         // initGroupingPath
index 992944ffb4767605db992e126e32a25f9e00e145..8e5df96d3e4126866f3273d0df33476a3630f436 100644 (file)
@@ -16,10 +16,10 @@ import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.common.YangVersion;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
 import org.opendaylight.yangtools.yang.model.api.stmt.RefineStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
+import org.opendaylight.yangtools.yang.model.api.stmt.UsesEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.UsesStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.namespace.ChildSchemaNodeNamespace;
 import org.opendaylight.yangtools.yang.parser.rfc7950.reactor.YangValidationBundles;
@@ -58,7 +58,7 @@ final class UsesStatementImpl extends AbstractDeclaredStatement<QName> implement
      */
     static void copyFromSourceToTarget(final Mutable<?, ?, ?> sourceGrpStmtCtx,
             final StatementContextBase<?, ?, ?> targetCtx,
-            final Mutable<QName, UsesStatement, EffectiveStatement<QName, UsesStatement>> usesNode) {
+            final Mutable<QName, UsesStatement, UsesEffectiveStatement> usesNode) {
         final Collection<? extends Mutable<?, ?, ?>> declared = sourceGrpStmtCtx.mutableDeclaredSubstatements();
         final Collection<? extends Mutable<?, ?, ?>> effective = sourceGrpStmtCtx.mutableEffectiveSubstatements();
         final Collection<Mutable<?, ?, ?>> buffer = new ArrayList<>(declared.size() + effective.size());
@@ -120,8 +120,7 @@ final class UsesStatementImpl extends AbstractDeclaredStatement<QName> implement
         return true;
     }
 
-    public static void resolveUsesNode(
-            final Mutable<QName, UsesStatement, EffectiveStatement<QName, UsesStatement>> usesNode,
+    public static void resolveUsesNode(final Mutable<QName, UsesStatement, UsesEffectiveStatement> usesNode,
             final StmtContext<?, ?, ?> targetNodeStmtCtx) {
         for (final Mutable<?, ?, ?> subStmtCtx : usesNode.mutableDeclaredSubstatements()) {
             if (StmtContextUtils.producesDeclared(subStmtCtx, RefineStatement.class)
index 7f28b90dce146b494d7383aeded7fa3efd5e0965..2c3af93469d367fe3c88334055bf43290004bb90 100644 (file)
@@ -10,7 +10,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.uses;
 import java.util.Collection;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.UsesEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.UsesStatement;
 import org.opendaylight.yangtools.yang.parser.spi.GroupingNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractQNameStatementSupport;
@@ -26,8 +26,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.stmt.reactor.StatementContextBase;
 
-public final class UsesStatementSupport extends
-        AbstractQNameStatementSupport<UsesStatement, EffectiveStatement<QName, UsesStatement>> {
+public final class UsesStatementSupport
+        extends AbstractQNameStatementSupport<UsesStatement, UsesEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .USES)
         .addAny(YangStmtMapping.AUGMENT)
@@ -54,8 +54,7 @@ public final class UsesStatementSupport extends
     }
 
     @Override
-    public void onFullDefinitionDeclared(
-            final Mutable<QName, UsesStatement, EffectiveStatement<QName, UsesStatement>> usesNode) {
+    public void onFullDefinitionDeclared(final Mutable<QName, UsesStatement, UsesEffectiveStatement> usesNode) {
         if (!usesNode.isSupportedByFeatures()) {
             return;
         }
@@ -98,8 +97,7 @@ public final class UsesStatementSupport extends
     }
 
     @Override
-    public EffectiveStatement<QName, UsesStatement> createEffective(
-            final StmtContext<QName, UsesStatement, EffectiveStatement<QName, UsesStatement>> ctx) {
+    public UsesEffectiveStatement createEffective(final StmtContext<QName, UsesStatement, UsesEffectiveStatement> ctx) {
         return new UsesEffectiveStatementImpl(ctx);
     }
 
index c03c96cd3f3144ec2b1a0de22f45219e0d801c70..9f4511cd473c22ef17a351c3ed4f0a36c5f076ab 100644 (file)
@@ -8,15 +8,15 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.value;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.ValueEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ValueStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class ValueStatementSupport extends
-        AbstractStatementSupport<Integer, ValueStatement, EffectiveStatement<Integer, ValueStatement>> {
+public final class ValueStatementSupport
+        extends AbstractStatementSupport<Integer, ValueStatement, ValueEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.VALUE).build();
     private static final ValueStatementSupport INSTANCE = new ValueStatementSupport();
@@ -45,8 +45,8 @@ public final class ValueStatementSupport extends
     }
 
     @Override
-    public EffectiveStatement<Integer, ValueStatement> createEffective(
-            final StmtContext<Integer, ValueStatement, EffectiveStatement<Integer, ValueStatement>> ctx) {
+    public ValueEffectiveStatement createEffective(
+            final StmtContext<Integer, ValueStatement, ValueEffectiveStatement> ctx) {
         return new ValueEffectiveStatementImpl(ctx);
     }
 
index 1d559170c518810112fa4ebec0402a54de1d160b..4f862d3d73c40f3142bf7757bb10dd064d8f46dc 100644 (file)
@@ -9,15 +9,15 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.when;
 
 import org.opendaylight.yangtools.yang.model.api.RevisionAwareXPath;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.WhenEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.WhenStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.ArgumentUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class WhenStatementSupport extends AbstractStatementSupport<RevisionAwareXPath, WhenStatement,
-        EffectiveStatement<RevisionAwareXPath, WhenStatement>> {
+public final class WhenStatementSupport
+        extends AbstractStatementSupport<RevisionAwareXPath, WhenStatement, WhenEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.WHEN)
         .addOptional(YangStmtMapping.DESCRIPTION)
@@ -44,9 +44,8 @@ public final class WhenStatementSupport extends AbstractStatementSupport<Revisio
     }
 
     @Override
-    public EffectiveStatement<RevisionAwareXPath, WhenStatement> createEffective(
-            final StmtContext<RevisionAwareXPath, WhenStatement,
-            EffectiveStatement<RevisionAwareXPath, WhenStatement>> ctx) {
+    public WhenEffectiveStatement createEffective(
+            final StmtContext<RevisionAwareXPath, WhenStatement, WhenEffectiveStatement> ctx) {
         return new WhenEffectiveStatementImpl(ctx);
     }
 
index 483e63951626b474493b3e9c890dc86f9c0646a9..3819dec92c667478740f0fbae8f72d08766cb460 100644 (file)
@@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.yang_version;
 
 import org.opendaylight.yangtools.yang.common.YangVersion;
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.YangVersionEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.YangVersionStatement;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
@@ -17,8 +17,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
-public final class YangVersionStatementSupport extends AbstractStatementSupport<YangVersion, YangVersionStatement,
-        EffectiveStatement<YangVersion, YangVersionStatement>> {
+public final class YangVersionStatementSupport
+        extends AbstractStatementSupport<YangVersion, YangVersionStatement, YangVersionEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
         .YANG_VERSION)
         .build();
@@ -44,14 +44,14 @@ public final class YangVersionStatementSupport extends AbstractStatementSupport<
     }
 
     @Override
-    public void onPreLinkageDeclared(final Mutable<YangVersion, YangVersionStatement,
-            EffectiveStatement<YangVersion, YangVersionStatement>> stmt) {
+    public void onPreLinkageDeclared(
+            final Mutable<YangVersion, YangVersionStatement, YangVersionEffectiveStatement> stmt) {
         stmt.setRootVersion(stmt.getStatementArgument());
     }
 
     @Override
-    public EffectiveStatement<YangVersion, YangVersionStatement> createEffective(final StmtContext<YangVersion,
-            YangVersionStatement, EffectiveStatement<YangVersion, YangVersionStatement>> ctx) {
+    public YangVersionEffectiveStatement createEffective(
+            final StmtContext<YangVersion, YangVersionStatement, YangVersionEffectiveStatement> ctx) {
         return new YangVersionEffectiveStatementImpl(ctx);
     }
 
index ffff495661fe28684cde624c3b84d0174c5ca971..c8a19616754d445ebcb77d8b7b6e98f60844109e 100644 (file)
@@ -8,15 +8,15 @@
 package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.yin_element;
 
 import org.opendaylight.yangtools.yang.model.api.YangStmtMapping;
-import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.YinElementEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.YinElementStatement;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.ArgumentUtils;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
-public final class YinElementStatementSupport extends
-        AbstractStatementSupport<Boolean, YinElementStatement, EffectiveStatement<Boolean, YinElementStatement>> {
+public final class YinElementStatementSupport
+        extends AbstractStatementSupport<Boolean, YinElementStatement, YinElementEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.YIN_ELEMENT).build();
     private static final YinElementStatementSupport INSTANCE = new YinElementStatementSupport();
@@ -40,8 +40,8 @@ public final class YinElementStatementSupport extends
     }
 
     @Override
-    public EffectiveStatement<Boolean, YinElementStatement> createEffective(
-            final StmtContext<Boolean, YinElementStatement, EffectiveStatement<Boolean, YinElementStatement>> ctx) {
+    public YinElementEffectiveStatement createEffective(
+            final StmtContext<Boolean, YinElementStatement, YinElementEffectiveStatement> ctx) {
         return new YinElementEffectiveStatementImpl(ctx);
     }