Convert trivial CopyPolicy users to StatementPolicy 57/94657/4
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 19 Jan 2021 12:51:03 +0000 (13:51 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 19 Jan 2021 13:47:08 +0000 (14:47 +0100)
Context-independent and reject-copy statements are trivial to
migrate, do just that. We also introduce migration constructors
to various abstract statement support classes to allow the
policy to pass through.

JIRA: YANGTOOLS-1195
Change-Id: Ib1d4de524e55b81bfaef69886ab8d113651cdb96
Signed-off-by: miroslav.kovac <miroslav.kovac@pantheon.tech>
Signed-off-by: Michal Banik <michal.banik@pantheon.tech>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
64 files changed:
yang/openconfig-parser-support/src/main/java/org/opendaylight/yangtools/openconfig/parser/AbstractHashedValueStatementSupport.java
yang/rfc6241-parser-support/src/main/java/org/opendaylight/yangtools/rfc6241/parser/GetFilterElementAttributesStatementSupport.java
yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyAllStatementSupport.java
yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyWriteStatementSupport.java
yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/AliasStatementSupport.java
yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DefValStatementSupport.java
yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DisplayHintStatementSupport.java
yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/ImpliedStatementSupport.java
yang/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/openconfig/stmt/OpenConfigVersionSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseBooleanStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseInternedStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseQNameStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStringStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseVoidStatementSupport.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/base/BaseStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/belongs_to/BelongsToStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/bit/BitStatementSupport.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/contact/ContactStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/default_/DefaultStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/description/DescriptionStatementSupport.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_/EnumStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_app_tag/ErrorAppTagStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_message/ErrorMessageStatementSupport.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/identity/IdentityStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/if_feature/AbstractIfFeatureStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/ImportStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/include/IncludeStatementSupport.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/mandatory/MandatoryStatementSupport.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/module/ModuleStatementSupport.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/ordered_by/OrderedByStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/organization/OrganizationStatementSupport.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/PatternStatementSupport.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/prefix/PrefixStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/presence/PresenceStatementSupport.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/reference/ReferenceStatementSupport.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/status/StatusStatementSupport.java
yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/submodule/SubmoduleStatementSupport.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/units/UnitsStatementSupport.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
yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionSupport.java

index 6a60f6c8600365d87e56ba9d2eb3337cda28972f..5cfa08245f34f0a180aad69b222cb45b64016c65 100644 (file)
@@ -24,7 +24,6 @@ import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.BaseVoidStatementSupp
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.UnknownEffectiveStatementBase;
 import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SchemaPathSupport;
-import org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupport.CopyPolicy;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
 
@@ -80,7 +79,7 @@ abstract class AbstractHashedValueStatementSupport
     private final SubstatementValidator validator;
 
     AbstractHashedValueStatementSupport(final StatementDefinition definition) {
-        super(definition, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(definition, StatementPolicy.contextIndependent());
         this.validator = SubstatementValidator.builder(definition).build();
     }
 
index a45632a8ba834584586452a6a608ec7827a2eded..2331d445a75aa251cd650ab53294ce50f1fbecc7 100644 (file)
@@ -27,7 +27,6 @@ import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.BaseVoidStatementSupp
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.UnknownEffectiveStatementBase;
 import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
 import org.opendaylight.yangtools.yang.parser.spi.meta.SchemaPathSupport;
-import org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupport.CopyPolicy;
 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;
@@ -82,7 +81,7 @@ public final class GetFilterElementAttributesStatementSupport extends BaseVoidSt
     private final SubstatementValidator validator;
 
     GetFilterElementAttributesStatementSupport(final StatementDefinition definition) {
-        super(definition, CopyPolicy.REJECT);
+        super(definition, StatementPolicy.reject());
         this.validator = SubstatementValidator.builder(definition).build();
     }
 
index 7721e4f9194779fc9009da756b99b2906c5a8d85..f5ba81e90bd41634af54b18edc8a9ea862d3a386 100644 (file)
@@ -72,7 +72,7 @@ public final class DefaultDenyAllStatementSupport
     private final SubstatementValidator validator;
 
     private DefaultDenyAllStatementSupport(final StatementDefinition definition) {
-        super(definition, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(definition, StatementPolicy.contextIndependent());
         this.validator = SubstatementValidator.builder(definition).build();
     }
 
index 1df93bf7f4e0ff8bf9bf2f621a3e32e1babc847b..6b85412f8a3a72715e7474098a9e30880f225863 100644 (file)
@@ -72,7 +72,7 @@ public final class DefaultDenyWriteStatementSupport
     private final SubstatementValidator validator;
 
     DefaultDenyWriteStatementSupport(final StatementDefinition definition) {
-        super(definition, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(definition, StatementPolicy.contextIndependent());
         this.validator = SubstatementValidator.builder(definition).build();
     }
 
index a7020b236bfbae2af5e75d6769821c63f4c14cfa..a9e42906aef1b22b021bc94da2a2133119ed6fe2 100644 (file)
@@ -33,7 +33,7 @@ public final class AliasStatementSupport
     private static final AliasStatementSupport INSTANCE = new AliasStatementSupport();
 
     private AliasStatementSupport() {
-        super(IetfYangSmiv2ExtensionsMapping.ALIAS, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(IetfYangSmiv2ExtensionsMapping.ALIAS, StatementPolicy.contextIndependent());
     }
 
     public static AliasStatementSupport getInstance() {
index 2ef5b13e89347ef0387c4a12199c867f9784ecb1..f9fc70e0c1bbc19a4c6e4deda39edc43e73e362f 100644 (file)
@@ -27,7 +27,7 @@ public final class DefValStatementSupport
     private static final DefValStatementSupport INSTANCE = new DefValStatementSupport();
 
     private DefValStatementSupport() {
-        super(IetfYangSmiv2ExtensionsMapping.DEFVAL, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(IetfYangSmiv2ExtensionsMapping.DEFVAL, StatementPolicy.contextIndependent());
     }
 
     public static DefValStatementSupport getInstance() {
index 48d9ae9cb42641af981d476b7bd983a0a47eafb7..339c9172e27a40691706394639e378ca1a25483f 100644 (file)
@@ -27,7 +27,7 @@ public final class DisplayHintStatementSupport
     private static final DisplayHintStatementSupport INSTANCE = new DisplayHintStatementSupport();
 
     private DisplayHintStatementSupport() {
-        super(IetfYangSmiv2ExtensionsMapping.DISPLAY_HINT, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(IetfYangSmiv2ExtensionsMapping.DISPLAY_HINT, StatementPolicy.contextIndependent());
     }
 
     public static DisplayHintStatementSupport getInstance() {
index aa47a79ff65f7606d4f3caecd92f1a52a1ce8820..4281f2fd2f0be483d4aa97e1c19630182e3ff0cf 100644 (file)
@@ -27,7 +27,7 @@ public final class ImpliedStatementSupport
     private static final ImpliedStatementSupport INSTANCE = new ImpliedStatementSupport();
 
     private ImpliedStatementSupport() {
-        super(IetfYangSmiv2ExtensionsMapping.IMPLIED, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(IetfYangSmiv2ExtensionsMapping.IMPLIED, StatementPolicy.contextIndependent());
     }
 
     public static ImpliedStatementSupport getInstance() {
index 9aecccbc773c1fc48e3dd04a7e4bc084d4b88524..848f19a7e2bb0f873bfd13a986f1b37c4ab42d30 100644 (file)
@@ -48,7 +48,7 @@ public final class YangDataStatementSupport
     private final SubstatementValidator validator;
 
     private YangDataStatementSupport(final StatementDefinition definition) {
-        super(definition, CopyPolicy.REJECT);
+        super(definition, StatementPolicy.reject());
         validator = SubstatementValidator.builder(definition)
                 .addMandatory(YangStmtMapping.CONTAINER)
                 .addOptional(YangStmtMapping.USES)
index 56d8c1290c7ec59c63ba493b35aa72af473e8393..2e2fb6de43f49c6c139e1987790930a4ba48c529 100644 (file)
@@ -28,7 +28,7 @@ public final class OpenConfigVersionSupport
     private static final OpenConfigVersionSupport INSTANCE = new OpenConfigVersionSupport();
 
     private OpenConfigVersionSupport() {
-        super(OpenConfigStatements.OPENCONFIG_VERSION, CopyPolicy.REJECT);
+        super(OpenConfigStatements.OPENCONFIG_VERSION, StatementPolicy.reject());
     }
 
     public static OpenConfigVersionSupport getInstance() {
index 59ae7bd101a47bd52502a0b002d3c93502c7e90f..0b2597f9586c5a9813f9d156e44146f03cc7f149 100644 (file)
@@ -19,7 +19,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 
 /**
- * Specialization of {@link BaseStatementSupport} for Boolean statement arguments.
+ * Specialization of {@link BaseStatementSupport} for statements which carry a Boolean argument and are essentially
+ * context-independent.
  *
  * @param <D> Declared Statement representation
  * @param <E> Effective Statement representation
@@ -33,8 +34,8 @@ public abstract class BaseBooleanStatementSupport<D extends DeclaredStatement<Bo
     private final @NonNull D emptyDeclaredTrue;
 
     protected BaseBooleanStatementSupport(final StatementDefinition publicDefinition,
-            final E emptyEffectiveFalse, final E emptyEffectiveTrue, final CopyPolicy copyPolicy) {
-        super(publicDefinition, copyPolicy);
+            final E emptyEffectiveFalse, final E emptyEffectiveTrue, final StatementPolicy<Boolean, D> policy) {
+        super(publicDefinition, policy);
         this.emptyEffectiveFalse = requireNonNull(emptyEffectiveFalse);
         this.emptyEffectiveTrue = requireNonNull(emptyEffectiveTrue);
         emptyDeclaredFalse = requireNonNull(emptyEffectiveFalse.getDeclared());
index 1036544053fbb00e76a9510241cd61eb523e2204..8209ac7866b6807d62367afcc5ec746911750db3 100644 (file)
@@ -47,8 +47,9 @@ public abstract class BaseInternedStatementSupport<A, D extends DeclaredStatemen
                 }
             });
 
-    protected BaseInternedStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) {
-        super(publicDefinition, copyPolicy);
+    protected BaseInternedStatementSupport(final StatementDefinition publicDefinition,
+            final StatementPolicy<A, D> policy) {
+        super(publicDefinition, policy);
     }
 
     @Override
index 1dfbc35dcc2957dc148663016910105d884158b8..5b1d75ae789009c33661f139c46ea212c1cfbc61 100644 (file)
@@ -29,6 +29,12 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 @Beta
 public abstract class BaseQNameStatementSupport<D extends DeclaredStatement<QName>,
         E extends EffectiveStatement<QName, D>> extends BaseStatementSupport<QName, D, E> {
+    protected BaseQNameStatementSupport(final StatementDefinition publicDefinition,
+            final StatementPolicy<QName, D> policy) {
+        super(publicDefinition, policy);
+    }
+
+    @Deprecated
     protected BaseQNameStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) {
         super(publicDefinition, copyPolicy);
     }
index ab7465469968202f278d41933d5a2d69e7430f71..944789f0a7570ef383b5cf22ebd598fb59427599 100644 (file)
@@ -23,8 +23,9 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 @Beta
 public abstract class BaseStringStatementSupport<D extends DeclaredStatement<String>,
         E extends EffectiveStatement<String, D>> extends BaseStatementSupport<String, D, E> {
-    protected BaseStringStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) {
-        super(publicDefinition, copyPolicy);
+    protected BaseStringStatementSupport(final StatementDefinition publicDefinition,
+            final StatementPolicy<String, D> policy) {
+        super(publicDefinition, policy);
     }
 
     @Override
index 532a1ad6266ae24a70bd3ddf763308a15c7c452a..439d3a63f3719a76c8f5366fccfdf784a14880d9 100644 (file)
@@ -16,8 +16,9 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 @Beta
 public abstract class BaseVoidStatementSupport<D extends DeclaredStatement<Void>, E extends EffectiveStatement<Void, D>>
         extends BaseStatementSupport<Void, D, E> {
-    protected BaseVoidStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) {
-        super(publicDefinition, copyPolicy);
+    protected BaseVoidStatementSupport(final StatementDefinition publicDefinition,
+            final StatementPolicy<Void, D> policy) {
+        super(publicDefinition, policy);
     }
 
     @Override
index 59a3c4b17b240fd6adfbebde7e340a2c27b43c2b..63cbe0c3869aa31ac8a58376bfa1933960fd1c12 100644 (file)
@@ -29,7 +29,7 @@ public final class ArgumentStatementSupport
     private static final ArgumentStatementSupport INSTANCE = new ArgumentStatementSupport();
 
     private ArgumentStatementSupport() {
-        super(YangStmtMapping.ARGUMENT, CopyPolicy.REJECT);
+        super(YangStmtMapping.ARGUMENT, StatementPolicy.reject());
     }
 
     public static ArgumentStatementSupport getInstance() {
index 5b03055da80d695a34f79028bf56f063cf619bed..1f03b12a118ee6ccd33df04d73577477ed8e3ace 100644 (file)
@@ -36,7 +36,7 @@ public final class BaseStatementSupport extends BaseQNameStatementSupport<BaseSt
     private static final BaseStatementSupport INSTANCE = new BaseStatementSupport();
 
     private BaseStatementSupport() {
-        super(YangStmtMapping.BASE, CopyPolicy.REJECT);
+        super(YangStmtMapping.BASE, StatementPolicy.reject());
     }
 
     public static BaseStatementSupport getInstance() {
index 2d35b7546b192da5e9222322456ffd65b7980549..2c08595305aa2c048daad53035a75d6631b8c236 100644 (file)
@@ -41,7 +41,7 @@ public final class BelongsToStatementSupport
     private static final BelongsToStatementSupport INSTANCE = new BelongsToStatementSupport();
 
     private BelongsToStatementSupport() {
-        super(YangStmtMapping.BELONGS_TO, CopyPolicy.REJECT);
+        super(YangStmtMapping.BELONGS_TO, StatementPolicy.reject());
     }
 
     public static BelongsToStatementSupport getInstance() {
index 7b6d482c0680ff8a6281aa81ea890a112beae5d2..9f6a6a030aa3bfe5e967a3270486295a903e38d2 100644 (file)
@@ -44,7 +44,7 @@ public final class BitStatementSupport extends BaseStatementSupport<String, BitS
     private final SubstatementValidator validator;
 
     private BitStatementSupport(final SubstatementValidator validator) {
-        super(YangStmtMapping.BIT, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.BIT, StatementPolicy.contextIndependent());
         this.validator = requireNonNull(validator);
     }
 
index 1990615667770f5bd228dbc0b2c25123f36d28b4..1a4e817379bccaebb44db3ea5e571124d7e23a91 100644 (file)
@@ -24,8 +24,12 @@ public final class ConfigStatementSupport
     private static final ConfigStatementSupport INSTANCE = new ConfigStatementSupport();
 
     private ConfigStatementSupport() {
-        super(YangStmtMapping.CONFIG, new EmptyConfigEffectiveStatement(new EmptyConfigStatement(Boolean.FALSE)),
-            new EmptyConfigEffectiveStatement(new EmptyConfigStatement(Boolean.TRUE)), CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.CONFIG,
+            new EmptyConfigEffectiveStatement(new EmptyConfigStatement(Boolean.FALSE)),
+            new EmptyConfigEffectiveStatement(new EmptyConfigStatement(Boolean.TRUE)),
+            // FIXME: This is not quite true. If we are instantiated in a context which ignores config, which should
+            //        really fizzle. This needs some more analysis.
+            StatementPolicy.contextIndependent());
     }
 
     public static ConfigStatementSupport getInstance() {
index 7367dc20734e0dee95a4030cf0cb0e5b0432ce83..39a5db3b534f7963c9d7c931329a1fb304170339 100644 (file)
@@ -25,7 +25,7 @@ public final class ContactStatementSupport
     private static final ContactStatementSupport INSTANCE = new ContactStatementSupport();
 
     private ContactStatementSupport() {
-        super(YangStmtMapping.CONTACT, CopyPolicy.REJECT);
+        super(YangStmtMapping.CONTACT, StatementPolicy.reject());
     }
 
     public static ContactStatementSupport getInstance() {
index 0c98ecdd9be6ebcd5c83501187435f258f2e5dd1..226d1d2251fece439b376e609caf06303a19fc08 100644 (file)
@@ -25,8 +25,8 @@ public final class DefaultStatementSupport
     private static final DefaultStatementSupport INSTANCE = new DefaultStatementSupport();
 
     private DefaultStatementSupport() {
-        // Note: if we start interpreting the string we'll need to use CopyPolicy.DECLARED_COPY
-        super(YangStmtMapping.DEFAULT, CopyPolicy.CONTEXT_INDEPENDENT);
+        // Note: if we start interpreting the string we'll need to use StatementPolicy.declaredCopy()
+        super(YangStmtMapping.DEFAULT, StatementPolicy.contextIndependent());
     }
 
     public static DefaultStatementSupport getInstance() {
index 5b94aff9ceb5b298bfe9d6b7229cbe27949adcdd..422cffc1e1543567ab904a1383d25b22da019cb1 100644 (file)
@@ -25,7 +25,7 @@ public final class DescriptionStatementSupport
     private static final DescriptionStatementSupport INSTANCE = new DescriptionStatementSupport();
 
     private DescriptionStatementSupport() {
-        super(YangStmtMapping.DESCRIPTION, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.DESCRIPTION, StatementPolicy.contextIndependent());
     }
 
     public static DescriptionStatementSupport getInstance() {
index 337cfbd6c90d916b04a8ec92150fae933a5af7b4..123ec4120bece3ee42005bc07a71514ba6f5acc8 100644 (file)
@@ -100,7 +100,7 @@ abstract class AbstractDeviateStatementSupport
             YangStmtMapping.MANDATORY, YangStmtMapping.MAX_ELEMENTS, YangStmtMapping.MIN_ELEMENTS);
 
     AbstractDeviateStatementSupport() {
-        super(YangStmtMapping.DEVIATE, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.DEVIATE, StatementPolicy.contextIndependent());
     }
 
     @Override
index 8b5bfe66deb31f66c225b41e46764b15c72998c8..e23412ace2dbba351ea64f8641659aff37d576b5 100644 (file)
@@ -36,7 +36,7 @@ public final class DeviationStatementSupport
     private static final DeviationStatementSupport INSTANCE = new DeviationStatementSupport();
 
     private DeviationStatementSupport() {
-        super(YangStmtMapping.DEVIATION, CopyPolicy.REJECT);
+        super(YangStmtMapping.DEVIATION, StatementPolicy.reject());
     }
 
     public static DeviationStatementSupport getInstance() {
index ae8c4f49bd99f542a6fb27dc550606302929a8ee..802263af41fed35339c3f1b6fac130cbf224c6d2 100644 (file)
@@ -43,7 +43,7 @@ public final class EnumStatementSupport extends BaseStatementSupport<String, Enu
     private final SubstatementValidator validator;
 
     private EnumStatementSupport(final SubstatementValidator validator) {
-        super(YangStmtMapping.ENUM, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.ENUM, StatementPolicy.contextIndependent());
         this.validator = requireNonNull(validator);
     }
 
index f60b89bda0adece50672152c6ef2e97a94f021be..135f909ca354bd26bf651c9b2a6a61dc1696a226 100644 (file)
@@ -25,7 +25,7 @@ public final class ErrorAppTagStatementSupport
     private static final ErrorAppTagStatementSupport INSTANCE = new ErrorAppTagStatementSupport();
 
     private ErrorAppTagStatementSupport() {
-        super(YangStmtMapping.ERROR_APP_TAG, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.ERROR_APP_TAG, StatementPolicy.contextIndependent());
     }
 
     public static ErrorAppTagStatementSupport getInstance() {
index b1bf6410e7969aa56cb130bd04ccec17a91b1701..c7e905e490da735a442f8efec456368ce4ecf389 100644 (file)
@@ -25,7 +25,7 @@ public final class ErrorMessageStatementSupport
     private static final ErrorMessageStatementSupport INSTANCE = new ErrorMessageStatementSupport();
 
     private ErrorMessageStatementSupport() {
-        super(YangStmtMapping.ERROR_MESSAGE, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.ERROR_MESSAGE, StatementPolicy.contextIndependent());
     }
 
     public static ErrorMessageStatementSupport getInstance() {
index 29fec15bb1134049dd1687257c770a91e1ac71cb..29794fffe7923a89ddc95892c6b20463d5d1ad99 100644 (file)
@@ -46,7 +46,7 @@ public final class ExtensionStatementSupport
             new ThreadLocal<>();
 
     private ExtensionStatementSupport() {
-        super(YangStmtMapping.EXTENSION, CopyPolicy.REJECT);
+        super(YangStmtMapping.EXTENSION, StatementPolicy.reject());
     }
 
     public static ExtensionStatementSupport getInstance() {
index 5a822af897b6881230f0e324e27592a805a4bbf5..fe7dab7af2229e2da37069e352dbcf902bb7d7f8 100644 (file)
@@ -39,7 +39,7 @@ public final class FeatureStatementSupport
     private static final int EMPTY_EFFECTIVE_FLAGS = new FlagsBuilder().setStatus(Status.CURRENT).toFlags();
 
     private FeatureStatementSupport() {
-        super(YangStmtMapping.FEATURE, CopyPolicy.REJECT);
+        super(YangStmtMapping.FEATURE, StatementPolicy.reject());
     }
 
     public static FeatureStatementSupport getInstance() {
index a6d48149a88dd287d815afc93a3547801138a11c..2d1f72c962fba8e92a3815fb18482f5ff8fa96c0 100644 (file)
@@ -50,7 +50,7 @@ public final class FractionDigitsStatementSupport
     }
 
     private FractionDigitsStatementSupport() {
-        super(YangStmtMapping.FRACTION_DIGITS, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.FRACTION_DIGITS, StatementPolicy.contextIndependent());
     }
 
     public static FractionDigitsStatementSupport getInstance() {
index e4282d084b86254d3239a9c5f694febd3bd1fae0..3bf9b14817c836a3be0ecce46e7bd1b10b6700c1 100644 (file)
@@ -59,7 +59,7 @@ public final class IdentityStatementSupport
     private final SubstatementValidator validator;
 
     private IdentityStatementSupport(final SubstatementValidator validator) {
-        super(YangStmtMapping.IDENTITY, CopyPolicy.DECLARED_COPY);
+        super(YangStmtMapping.IDENTITY, StatementPolicy.reject());
         this.validator = requireNonNull(validator);
     }
 
index 98477a55f73f347c2b80b4539bcb820e290d79a7..b79b5f07d4d16b22cfb1733bafed945ae8eb85f3 100644 (file)
@@ -45,7 +45,7 @@ abstract class AbstractIfFeatureStatementSupport
         .build();
 
     AbstractIfFeatureStatementSupport() {
-        super(YangStmtMapping.IF_FEATURE, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.IF_FEATURE, StatementPolicy.contextIndependent());
     }
 
     @Override
index e5e0a2d8a3fd12032d061408447cab3aca31f0a0..4e729c29b6b3c8898b050f93221b19b8d8fa1dce 100644 (file)
@@ -63,7 +63,7 @@ public final class ImportStatementSupport
     private final SubstatementValidator validator;
 
     private ImportStatementSupport(final SubstatementValidator validator) {
-        super(YangStmtMapping.IMPORT, CopyPolicy.REJECT);
+        super(YangStmtMapping.IMPORT, StatementPolicy.reject());
         this.validator = requireNonNull(validator);
     }
 
index 66ec0dd098fcadd7fbdca4c4938741b0b5fe13d6..3a3487f292d860df9ebe9dfca9f7a895a75b2d12 100644 (file)
@@ -54,7 +54,7 @@ public final class IncludeStatementSupport
     private final SubstatementValidator validator;
 
     IncludeStatementSupport(final SubstatementValidator validator) {
-        super(YangStmtMapping.INCLUDE, CopyPolicy.REJECT);
+        super(YangStmtMapping.INCLUDE, StatementPolicy.reject());
         this.validator = requireNonNull(validator);
     }
 
index 120a7d870808f83acc15d73849432e1e1e72b1b2..395529f102f66a39fa1250038d747596fc760109 100644 (file)
@@ -40,7 +40,7 @@ public final class LengthStatementSupport
     private static final LengthStatementSupport INSTANCE = new LengthStatementSupport();
 
     private LengthStatementSupport() {
-        super(YangStmtMapping.LENGTH, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.LENGTH, StatementPolicy.contextIndependent());
     }
 
     public static LengthStatementSupport getInstance() {
index de0bbf9bb28dabe1d5c0064830d0de4b9ebf1a34..eef476681c3e19d68285e36b660f5a594e8e5c98 100644 (file)
@@ -27,7 +27,7 @@ public final class MandatoryStatementSupport extends
         super(YangStmtMapping.MANDATORY,
             new EmptyMandatoryEffectiveStatement(new EmptyMandatoryStatement(Boolean.FALSE)),
             new EmptyMandatoryEffectiveStatement(new EmptyMandatoryStatement(Boolean.TRUE)),
-            CopyPolicy.CONTEXT_INDEPENDENT);
+            StatementPolicy.contextIndependent());
     }
 
     public static MandatoryStatementSupport getInstance() {
index fb2b4cc69af2c3820101559016364453c4146e6f..e06eddacce3906fb1334a5d1bf07115af4746101 100644 (file)
@@ -26,7 +26,7 @@ public final class MaxElementsStatementSupport
     private static final MaxElementsStatementSupport INSTANCE = new MaxElementsStatementSupport();
 
     private MaxElementsStatementSupport() {
-        super(YangStmtMapping.MAX_ELEMENTS, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.MAX_ELEMENTS, StatementPolicy.contextIndependent());
     }
 
     public static MaxElementsStatementSupport getInstance() {
index 3fb7310c6671cd8a2e341988179bb7b27ef24819..268d06f5d0aa1bd3efdc22bbe670fbdf9138ab6c 100644 (file)
@@ -26,7 +26,7 @@ public final class MinElementsStatementSupport
     private static final MinElementsStatementSupport INSTANCE = new MinElementsStatementSupport();
 
     private MinElementsStatementSupport() {
-        super(YangStmtMapping.MIN_ELEMENTS, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.MIN_ELEMENTS, StatementPolicy.contextIndependent());
     }
 
     public static MinElementsStatementSupport getInstance() {
index e731301af92250e12948cf17be5e0fea1ac35f7f..f247a510343fdab390184e398acda963e4d115bd 100644 (file)
@@ -27,7 +27,7 @@ public final class ModifierStatementSupport
     private static final ModifierStatementSupport INSTANCE = new ModifierStatementSupport();
 
     private ModifierStatementSupport() {
-        super(YangStmtMapping.MODIFIER, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.MODIFIER, StatementPolicy.contextIndependent());
     }
 
     public static ModifierStatementSupport getInstance() {
index e6b59a5a1c24173c992fe4afafba11e31f4f2a59..b8af8d8be8ee585384299a72c669e699793042ff 100644 (file)
@@ -132,7 +132,7 @@ public final class ModuleStatementSupport
     private final SubstatementValidator validator;
 
     private ModuleStatementSupport(final SubstatementValidator validator) {
-        super(YangStmtMapping.MODULE, CopyPolicy.REJECT);
+        super(YangStmtMapping.MODULE, StatementPolicy.reject());
         this.validator = requireNonNull(validator);
     }
 
index 8de175222043fae8eeef5aabff2aabcdbb81f273..dc2385ebde1b1522560e0b8419b129390b45ed8a 100644 (file)
@@ -36,8 +36,8 @@ public final class MustStatementSupport
     private final @NonNull XPathSupport xpathSupport;
 
     private MustStatementSupport(final XPathSupport xpathSupport) {
-        // Note: declared copy to future-proof when we bind expressions
-        super(YangStmtMapping.MUST, CopyPolicy.DECLARED_COPY);
+        // Note: if we end up binding expressions, this needs to become declaredCopy()
+        super(YangStmtMapping.MUST, StatementPolicy.contextIndependent());
         this.xpathSupport = requireNonNull(xpathSupport);
     }
 
index 40fc5d67173a79b247e671cf03e79f95036153d1..23a422467b7b729b5e9693524b4133dc9005b20b 100644 (file)
@@ -30,7 +30,7 @@ public final class NamespaceStatementSupport
     private static final NamespaceStatementSupport INSTANCE = new NamespaceStatementSupport();
 
     private NamespaceStatementSupport() {
-        super(YangStmtMapping.NAMESPACE, CopyPolicy.REJECT);
+        super(YangStmtMapping.NAMESPACE, StatementPolicy.reject());
     }
 
     public static NamespaceStatementSupport getInstance() {
index 4928696f3506577d772952b6417d8064848fb904..fdacec33e4b630aef9aaf74621c103a079bd2d06 100644 (file)
@@ -41,7 +41,7 @@ public final class OrderedByStatementSupport
             new EmptyOrderedByEffectiveStatement(EMPTY_USER_DECL);
 
     private OrderedByStatementSupport() {
-        super(YangStmtMapping.ORDERED_BY, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.ORDERED_BY, StatementPolicy.contextIndependent());
     }
 
     public static OrderedByStatementSupport getInstance() {
index 0b840e8a52c4f341c41f45dc22e73d486ca3d4be..cfa6edee161ac19ddb4d0d184d4ecb71bd7e710e 100644 (file)
@@ -26,7 +26,7 @@ public final class OrganizationStatementSupport
     private static final OrganizationStatementSupport INSTANCE = new OrganizationStatementSupport();
 
     private OrganizationStatementSupport() {
-        super(YangStmtMapping.ORGANIZATION, CopyPolicy.REJECT);
+        super(YangStmtMapping.ORGANIZATION, StatementPolicy.reject());
     }
 
     public static OrganizationStatementSupport getInstance() {
index 662683e5f7f35ec62469baff563402e8825bd9fa..71f98e1a7551ddb25d6b38f2c7947aec532da193 100644 (file)
@@ -34,7 +34,7 @@ public final class PathStatementSupport
 
     private PathStatementSupport(final PathExpressionParser parser) {
         // TODO: can 'path' really be copied?
-        super(YangStmtMapping.PATH, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.PATH, StatementPolicy.contextIndependent());
         this.parser = requireNonNull(parser);
     }
 
index e1c7a2eb0cb17459d7f5dfbaa0730f476b62eae2..c18013b6f7af7857b706be2f11806cac7453fa01 100644 (file)
@@ -49,7 +49,7 @@ public final class PatternStatementSupport
     private final SubstatementValidator validator;
 
     private PatternStatementSupport(final SubstatementValidator validator) {
-        super(YangStmtMapping.PATTERN, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.PATTERN, StatementPolicy.contextIndependent());
         this.validator = requireNonNull(validator);
     }
 
index 4cb959816ccb091b5cf5dd1ee099ca44b6535879..7e88042b19c85acfbfe83ebda76f502c56c80f44 100644 (file)
@@ -26,7 +26,7 @@ public final class PositionStatementSupport
     private static final PositionStatementSupport INSTANCE = new PositionStatementSupport();
 
     private PositionStatementSupport() {
-        super(YangStmtMapping.POSITION, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.POSITION, StatementPolicy.contextIndependent());
     }
 
     public static PositionStatementSupport getInstance() {
index bb2203a0d289bbccd05ad850f32e62c0cec5a146..c384a5b10efdb44e7d4b0ddcf93779a2586e915d 100644 (file)
@@ -25,7 +25,7 @@ public final class PrefixStatementSupport
     private static final PrefixStatementSupport INSTANCE = new PrefixStatementSupport();
 
     private PrefixStatementSupport() {
-        super(YangStmtMapping.PREFIX, CopyPolicy.REJECT);
+        super(YangStmtMapping.PREFIX, StatementPolicy.reject());
     }
 
     public static PrefixStatementSupport getInstance() {
index 37e52a6d265994b2daab0749b47d6e0c9097fd45..58154762f344f3760ad642f3322aea451989920b 100644 (file)
@@ -25,7 +25,7 @@ public final class PresenceStatementSupport
     private static final PresenceStatementSupport INSTANCE = new PresenceStatementSupport();
 
     private PresenceStatementSupport() {
-        super(YangStmtMapping.PRESENCE, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.PRESENCE, StatementPolicy.contextIndependent());
     }
 
     public static PresenceStatementSupport getInstance() {
index 501364fa0c0ef11e7e8650e71b8f9153bcfce9d1..eae5057df23a387b96506772a0baf15ad2ed548a 100644 (file)
@@ -31,17 +31,17 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
 public final class RangeStatementSupport
         extends BaseStatementSupport<List<ValueRange>, RangeStatement, RangeEffectiveStatement> {
-    private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping
-        .RANGE)
-        .addOptional(YangStmtMapping.DESCRIPTION)
-        .addOptional(YangStmtMapping.ERROR_APP_TAG)
-        .addOptional(YangStmtMapping.ERROR_MESSAGE)
-        .addOptional(YangStmtMapping.REFERENCE)
-        .build();
+    private static final SubstatementValidator SUBSTATEMENT_VALIDATOR =
+        SubstatementValidator.builder(YangStmtMapping.RANGE)
+            .addOptional(YangStmtMapping.DESCRIPTION)
+            .addOptional(YangStmtMapping.ERROR_APP_TAG)
+            .addOptional(YangStmtMapping.ERROR_MESSAGE)
+            .addOptional(YangStmtMapping.REFERENCE)
+            .build();
     private static final RangeStatementSupport INSTANCE = new RangeStatementSupport();
 
     private RangeStatementSupport() {
-        super(YangStmtMapping.RANGE, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.RANGE, StatementPolicy.contextIndependent());
     }
 
     public static RangeStatementSupport getInstance() {
index a79a1a625d95060b63c8e42d088b0d5b27677765..b535de1430c775e672cff8ad26507c9a7f9258cd 100644 (file)
@@ -26,7 +26,7 @@ public final class ReferenceStatementSupport
     private static final ReferenceStatementSupport INSTANCE = new ReferenceStatementSupport();
 
     private ReferenceStatementSupport() {
-        super(YangStmtMapping.REFERENCE, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.REFERENCE, StatementPolicy.contextIndependent());
     }
 
     public static ReferenceStatementSupport getInstance() {
index 3c2562b33796f02b23f556227252601dde7116cb..d22eec366604204abe05d5386ff4ea4c9af0670b 100644 (file)
@@ -23,12 +23,11 @@ public final class RequireInstanceStatementSupport
         YangStmtMapping.REQUIRE_INSTANCE).build();
     private static final RequireInstanceStatementSupport INSTANCE = new RequireInstanceStatementSupport();
 
-
     private RequireInstanceStatementSupport() {
         super(YangStmtMapping.REQUIRE_INSTANCE,
             new EmptyRequireInstanceEffectiveStatement(new EmptyRequireInstanceStatement(Boolean.FALSE)),
             new EmptyRequireInstanceEffectiveStatement(new EmptyRequireInstanceStatement(Boolean.TRUE)),
-            CopyPolicy.CONTEXT_INDEPENDENT);
+            StatementPolicy.contextIndependent());
     }
 
     public static RequireInstanceStatementSupport getInstance() {
@@ -56,4 +55,4 @@ public final class RequireInstanceStatementSupport
     protected EmptyRequireInstanceEffectiveStatement createEmptyEffective(final RequireInstanceStatement declared) {
         return new EmptyRequireInstanceEffectiveStatement(declared);
     }
-}
\ No newline at end of file
+}
index 7881fc6468dfe49fd05a4edcea2120206a22130d..50636eead83523d4645785fdd75f2d7fee7ebc6e 100644 (file)
@@ -31,7 +31,7 @@ public final class RevisionStatementSupport
     private static final RevisionStatementSupport INSTANCE = new RevisionStatementSupport();
 
     private RevisionStatementSupport() {
-        super(YangStmtMapping.REVISION, CopyPolicy.REJECT);
+        super(YangStmtMapping.REVISION, StatementPolicy.reject());
     }
 
     public static RevisionStatementSupport getInstance() {
index a1bed54c2a8de0db200f64484d440d0dae2e06ac..bad3d8f4383a313c3a08f70a26ca6f3d95bb98db 100644 (file)
@@ -28,7 +28,7 @@ public final class RevisionDateStatementSupport
     private static final RevisionDateStatementSupport INSTANCE = new RevisionDateStatementSupport();
 
     private RevisionDateStatementSupport() {
-        super(YangStmtMapping.REVISION_DATE, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.REVISION_DATE, StatementPolicy.contextIndependent());
     }
 
     public static RevisionDateStatementSupport getInstance() {
index 419a22234040d2250a54003a36b7038292943441..75f1e3f1ad53008775502844ca2d1ccc9078995e 100644 (file)
@@ -46,7 +46,7 @@ public final class StatusStatementSupport
             new EmptyStatusEffectiveStatement(EMPTY_OBSOLETE_DECL);
 
     private StatusStatementSupport() {
-        super(YangStmtMapping.STATUS, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.STATUS, StatementPolicy.contextIndependent());
     }
 
     public static StatusStatementSupport getInstance() {
index 325a104c83579ba4c0be38056b69b4f36c1372a8..e1b35a45db84415a6e17b07f35abcc85158e3915 100644 (file)
@@ -100,7 +100,7 @@ public final class SubmoduleStatementSupport
     private final SubstatementValidator validator;
 
     private SubmoduleStatementSupport(final SubstatementValidator validator) {
-        super(YangStmtMapping.SUBMODULE, CopyPolicy.REJECT);
+        super(YangStmtMapping.SUBMODULE, StatementPolicy.reject());
         this.validator = requireNonNull(validator);
     }
 
index 9823959bfca903414cce4fce318b6034eed68791..f929ee3f116f8e1bb7f8869c523f52069acc94c9 100644 (file)
@@ -51,7 +51,7 @@ public final class TypedefStatementSupport extends
     private static final TypedefStatementSupport INSTANCE = new TypedefStatementSupport();
 
     private TypedefStatementSupport() {
-        super(YangStmtMapping.TYPEDEF, CopyPolicy.REJECT);
+        super(YangStmtMapping.TYPEDEF, StatementPolicy.reject());
     }
 
     public static TypedefStatementSupport getInstance() {
index 962bb178d01e77a005b17b17498617a0477dd842..2d76a777aaa55ee81aa3e4ec63e03de6ab9afc9b 100644 (file)
@@ -26,7 +26,7 @@ public final class UnitsStatementSupport
     private static final UnitsStatementSupport INSTANCE = new UnitsStatementSupport();
 
     private UnitsStatementSupport() {
-        super(YangStmtMapping.UNITS, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.UNITS, StatementPolicy.contextIndependent());
     }
 
     public static UnitsStatementSupport getInstance() {
index bbd741c388ac55d1f8dbc0df11ebefc4daf2f07d..a4cc352b1e40e0db103805730de931363c76460a 100644 (file)
@@ -26,7 +26,7 @@ public final class ValueStatementSupport
     private static final ValueStatementSupport INSTANCE = new ValueStatementSupport();
 
     private ValueStatementSupport() {
-        super(YangStmtMapping.VALUE, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(YangStmtMapping.VALUE, StatementPolicy.contextIndependent());
     }
 
     public static ValueStatementSupport getInstance() {
index 359186d04fb0fa344442e5ff3161b680b2dfeb29..72cba392ae960dc19f781d6efff5cb700132d0f6 100644 (file)
@@ -34,8 +34,8 @@ public final class WhenStatementSupport
     private final @NonNull XPathSupport xpathSupport;
 
     private WhenStatementSupport(final XPathSupport xpathSupport) {
-        // Note: declared copy to future-proof when we bind expressions
-        super(YangStmtMapping.WHEN, CopyPolicy.DECLARED_COPY);
+        // Note: if we end up binding expressions, this needs to become declaredCopy()
+        super(YangStmtMapping.WHEN, StatementPolicy.contextIndependent());
         this.xpathSupport = requireNonNull(xpathSupport);
     }
 
index 6aabe600a2b9a58728a28a1c0c5440c38e8b5daf..1b0fd1777ead11cbd8e9aada840f12e8db56a520 100644 (file)
@@ -39,7 +39,7 @@ public final class YangVersionStatementSupport
             new EmptyYangVersionEffectiveStatement(EMPTY_VER1_1_DECL);
 
     private YangVersionStatementSupport() {
-        super(YangStmtMapping.YANG_VERSION, CopyPolicy.REJECT);
+        super(YangStmtMapping.YANG_VERSION, StatementPolicy.reject());
     }
 
     public static YangVersionStatementSupport getInstance() {
index 73e404a45d54bbd891ed742612388778afabb2f1..5f405d11f1cc3296bf4306cb31cde35998ba3898 100644 (file)
@@ -27,7 +27,7 @@ public final class YinElementStatementSupport
         super(YangStmtMapping.YIN_ELEMENT,
             new EmptyYinElementEffectiveStatement(new EmptyYinElementStatement(Boolean.FALSE)),
             new EmptyYinElementEffectiveStatement(new EmptyYinElementStatement(Boolean.TRUE)),
-            CopyPolicy.REJECT);
+            StatementPolicy.reject());
     }
 
     public static YinElementStatementSupport getInstance() {
index 653d65def8875ab0064c992b0eed588f5f944c2e..92ef9eb9754b6845ede7a984241dfab4a7c60eaa 100644 (file)
@@ -23,7 +23,7 @@ public final class ThirdPartyExtensionSupport
     private static final ThirdPartyExtensionSupport INSTANCE = new ThirdPartyExtensionSupport();
 
     private ThirdPartyExtensionSupport() {
-        super(ThirdPartyExtensionsMapping.THIRD_PARTY_EXTENSION, CopyPolicy.CONTEXT_INDEPENDENT);
+        super(ThirdPartyExtensionsMapping.THIRD_PARTY_EXTENSION, StatementPolicy.contextIndependent());
     }
 
     public static ThirdPartyExtensionSupport getInstance() {