From 1b07f81ecea1aa0b20e50c11ada8a80119675584 Mon Sep 17 00:00:00 2001 From: "miroslav.kovac" Date: Fri, 4 Dec 2020 15:54:14 +0100 Subject: [PATCH] Select copyPolicy for each StatementSupport class Since we want to minimaze amount of copping that we do we need to set the appropriate copyPolicy for each StatementSupport class separately JIRA: YANGTOOLS-1164 Change-Id: I128bfb44a1dffb4620b2f8aec4fef6a953d85c89 Signed-off-by: miroslav.kovac Signed-off-by: Robert Varga --- .../odlext/parser/AnyxmlSchemaLocationStatementSupport.java | 2 +- .../parser/AbstractHashedValueStatementSupport.java | 3 ++- .../parser/GetFilterElementAttributesStatementSupport.java | 3 ++- .../rfc6536/parser/DefaultDenyAllStatementSupport.java | 2 +- .../rfc6536/parser/DefaultDenyWriteStatementSupport.java | 2 +- .../yangtools/rfc6643/parser/AliasStatementSupport.java | 2 +- .../yangtools/rfc6643/parser/DefValStatementSupport.java | 2 +- .../yangtools/rfc6643/parser/DisplayHintStatementSupport.java | 2 +- .../yangtools/rfc6643/parser/ImpliedStatementSupport.java | 2 +- .../yangtools/rfc6643/parser/MaxAccessStatementSupport.java | 2 +- .../yangtools/rfc6643/parser/OidStatementSupport.java | 2 +- .../yangtools/rfc6643/parser/SubIdStatementSupport.java | 2 +- .../yangtools/rfc7952/parser/AnnotationStatementSupport.java | 3 ++- .../yangtools/rfc8040/parser/YangDataStatementSupport.java | 3 ++- .../yangtools/rfc8528/parser/MountPointStatementSupport.java | 2 +- .../yang/parser/stmt/reactor/StatementContextBase.java | 3 ++- .../yang/parser/openconfig/stmt/OpenConfigVersionSupport.java | 2 +- .../yang/parser/rfc7950/stmt/BaseBooleanStatementSupport.java | 4 ++-- .../parser/rfc7950/stmt/BaseImplicitStatementSupport.java | 4 ++-- .../parser/rfc7950/stmt/BaseInternedStatementSupport.java | 4 ++-- .../rfc7950/stmt/BaseOperationContainerStatementSupport.java | 4 ++-- .../yang/parser/rfc7950/stmt/BaseQNameStatementSupport.java | 4 ---- .../parser/rfc7950/stmt/BaseSchemaTreeStatementSupport.java | 4 ---- .../yang/parser/rfc7950/stmt/BaseStatementSupport.java | 3 --- .../yang/parser/rfc7950/stmt/BaseStringStatementSupport.java | 4 ++-- .../yang/parser/rfc7950/stmt/BaseVoidStatementSupport.java | 4 ++-- .../parser/rfc7950/stmt/action/ActionStatementSupport.java | 2 +- .../parser/rfc7950/stmt/anydata/AnydataStatementSupport.java | 2 +- .../parser/rfc7950/stmt/anyxml/AnyxmlStatementSupport.java | 2 +- .../rfc7950/stmt/argument/ArgumentStatementSupport.java | 2 +- .../rfc7950/stmt/augment/AbstractAugmentStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/base/BaseStatementSupport.java | 2 +- .../rfc7950/stmt/belongs_to/BelongsToStatementSupport.java | 2 +- .../parser/rfc7950/stmt/bit/AbstractBitStatementSupport.java | 2 +- .../rfc7950/stmt/case_/AbstractCaseStatementSupport.java | 2 +- .../rfc7950/stmt/choice/AbstractChoiceStatementSupport.java | 2 +- .../parser/rfc7950/stmt/config/ConfigStatementSupport.java | 2 +- .../parser/rfc7950/stmt/contact/ContactStatementSupport.java | 2 +- .../stmt/container/AbstractContainerStatementSupport.java | 2 +- .../parser/rfc7950/stmt/default_/DefaultStatementSupport.java | 3 ++- .../rfc7950/stmt/description/DescriptionStatementSupport.java | 2 +- .../rfc7950/stmt/deviate/AbstractDeviateStatementSupport.java | 2 +- .../rfc7950/stmt/deviation/DeviationStatementSupport.java | 2 +- .../rfc7950/stmt/enum_/AbstractEnumStatementSupport.java | 2 +- .../stmt/error_app_tag/ErrorAppTagStatementSupport.java | 2 +- .../stmt/error_message/ErrorMessageStatementSupport.java | 2 +- .../rfc7950/stmt/extension/ExtensionStatementSupport.java | 2 +- .../rfc7950/stmt/extension/ModelDefinedStatementSupport.java | 2 +- .../rfc7950/stmt/extension/UnrecognizedStatementSupport.java | 2 +- .../parser/rfc7950/stmt/feature/FeatureStatementSupport.java | 2 +- .../stmt/grouping/AbstractGroupingStatementSupport.java | 2 +- .../stmt/identity/AbstractIdentityStatementSupport.java | 2 +- .../rfc7950/stmt/import_/AbstractImportStatementSupport.java | 2 +- .../rfc7950/stmt/include/AbstractIncludeStatementSupport.java | 2 +- .../rfc7950/stmt/input/AbstractInputStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/key/KeyStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/leaf/LeafStatementSupport.java | 2 +- .../stmt/leaf_list/AbstractLeafListStatementSupport.java | 2 +- .../rfc7950/stmt/list/AbstractListStatementSupport.java | 2 +- .../rfc7950/stmt/mandatory/MandatoryStatementSupport.java | 3 ++- .../stmt/max_elements/MaxElementsStatementSupport.java | 2 +- .../stmt/min_elements/MinElementsStatementSupport.java | 2 +- .../rfc7950/stmt/modifier/ModifierStatementSupport.java | 2 +- .../rfc7950/stmt/module/AbstractModuleStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/must/MustStatementSupport.java | 3 ++- .../rfc7950/stmt/namespace/NamespaceStatementSupport.java | 2 +- .../notification/AbstractNotificationStatementSupport.java | 2 +- .../stmt/organization/OrganizationStatementSupport.java | 2 +- .../rfc7950/stmt/output/AbstractOutputStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/path/PathStatementSupport.java | 3 ++- .../rfc7950/stmt/position/PositionStatementSupport.java | 2 +- .../parser/rfc7950/stmt/prefix/PrefixStatementSupport.java | 2 +- .../rfc7950/stmt/presence/PresenceStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/range/RangeStatementSupport.java | 2 +- .../rfc7950/stmt/reference/ReferenceStatementSupport.java | 2 +- .../rfc7950/stmt/refine/AbstractRefineStatementSupport.java | 2 +- .../require_instance/RequireInstanceStatementSupport.java | 3 ++- .../rfc7950/stmt/revision/RevisionStatementSupport.java | 2 +- .../parser/rfc7950/stmt/rpc/AbstractRpcStatementSupport.java | 2 +- .../stmt/submodule/AbstractSubmoduleStatementSupport.java | 2 +- .../stmt/type/AbstractIdentityRefSpecificationSupport.java | 2 +- .../stmt/type/AbstractLeafrefSpecificationSupport.java | 2 +- .../rfc7950/stmt/type/AbstractTypeStatementSupport.java | 3 ++- .../parser/rfc7950/stmt/type/BitsSpecificationSupport.java | 2 +- .../rfc7950/stmt/type/Decimal64SpecificationSupport.java | 2 +- .../parser/rfc7950/stmt/type/EnumSpecificationSupport.java | 2 +- .../stmt/type/InstanceIdentifierSpecificationSupport.java | 2 +- .../parser/rfc7950/stmt/type/UnionSpecificationSupport.java | 2 +- .../parser/rfc7950/stmt/typedef/TypedefStatementSupport.java | 2 +- .../parser/rfc7950/stmt/unique/UniqueStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/units/UnitsStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/uses/UsesStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/value/ValueStatementSupport.java | 2 +- .../yang/parser/rfc7950/stmt/when/WhenStatementSupport.java | 3 ++- .../stmt/yang_version/YangVersionStatementSupport.java | 2 +- .../rfc7950/stmt/yin_element/YinElementStatementSupport.java | 3 ++- .../yang/thirdparty/plugin/ThirdPartyExtensionSupport.java | 2 +- .../yang/parser/spi/meta/AbstractStatementSupport.java | 4 ---- 98 files changed, 113 insertions(+), 115 deletions(-) diff --git a/yang/odlext-parser-support/src/main/java/org/opendaylight/yangtools/odlext/parser/AnyxmlSchemaLocationStatementSupport.java b/yang/odlext-parser-support/src/main/java/org/opendaylight/yangtools/odlext/parser/AnyxmlSchemaLocationStatementSupport.java index a07093a84f..4bda34e6e5 100644 --- a/yang/odlext-parser-support/src/main/java/org/opendaylight/yangtools/odlext/parser/AnyxmlSchemaLocationStatementSupport.java +++ b/yang/odlext-parser-support/src/main/java/org/opendaylight/yangtools/odlext/parser/AnyxmlSchemaLocationStatementSupport.java @@ -32,7 +32,7 @@ public final class AnyxmlSchemaLocationStatementSupport private final SubstatementValidator validator; private AnyxmlSchemaLocationStatementSupport(final StatementDefinition definition) { - super(definition); + super(definition, CopyPolicy.DECLARED_COPY); validator = SubstatementValidator.builder(definition).build(); } diff --git a/yang/openconfig-parser-support/src/main/java/org/opendaylight/yangtools/openconfig/parser/AbstractHashedValueStatementSupport.java b/yang/openconfig-parser-support/src/main/java/org/opendaylight/yangtools/openconfig/parser/AbstractHashedValueStatementSupport.java index e1dd8b7798..6a60f6c860 100644 --- a/yang/openconfig-parser-support/src/main/java/org/opendaylight/yangtools/openconfig/parser/AbstractHashedValueStatementSupport.java +++ b/yang/openconfig-parser-support/src/main/java/org/opendaylight/yangtools/openconfig/parser/AbstractHashedValueStatementSupport.java @@ -24,6 +24,7 @@ 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; @@ -79,7 +80,7 @@ abstract class AbstractHashedValueStatementSupport private final SubstatementValidator validator; AbstractHashedValueStatementSupport(final StatementDefinition definition) { - super(definition); + super(definition, CopyPolicy.CONTEXT_INDEPENDENT); this.validator = SubstatementValidator.builder(definition).build(); } diff --git a/yang/rfc6241-parser-support/src/main/java/org/opendaylight/yangtools/rfc6241/parser/GetFilterElementAttributesStatementSupport.java b/yang/rfc6241-parser-support/src/main/java/org/opendaylight/yangtools/rfc6241/parser/GetFilterElementAttributesStatementSupport.java index 5c562eb72a..a45632a8ba 100644 --- a/yang/rfc6241-parser-support/src/main/java/org/opendaylight/yangtools/rfc6241/parser/GetFilterElementAttributesStatementSupport.java +++ b/yang/rfc6241-parser-support/src/main/java/org/opendaylight/yangtools/rfc6241/parser/GetFilterElementAttributesStatementSupport.java @@ -27,6 +27,7 @@ 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; @@ -81,7 +82,7 @@ public final class GetFilterElementAttributesStatementSupport extends BaseVoidSt private final SubstatementValidator validator; GetFilterElementAttributesStatementSupport(final StatementDefinition definition) { - super(definition); + super(definition, CopyPolicy.REJECT); this.validator = SubstatementValidator.builder(definition).build(); } diff --git a/yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyAllStatementSupport.java b/yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyAllStatementSupport.java index 71e6928c32..7721e4f919 100644 --- a/yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyAllStatementSupport.java +++ b/yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyAllStatementSupport.java @@ -72,7 +72,7 @@ public final class DefaultDenyAllStatementSupport private final SubstatementValidator validator; private DefaultDenyAllStatementSupport(final StatementDefinition definition) { - super(definition); + super(definition, CopyPolicy.CONTEXT_INDEPENDENT); this.validator = SubstatementValidator.builder(definition).build(); } diff --git a/yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyWriteStatementSupport.java b/yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyWriteStatementSupport.java index f07791d7c8..1df93bf7f4 100644 --- a/yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyWriteStatementSupport.java +++ b/yang/rfc6536-parser-support/src/main/java/org/opendaylight/yangtools/rfc6536/parser/DefaultDenyWriteStatementSupport.java @@ -72,7 +72,7 @@ public final class DefaultDenyWriteStatementSupport private final SubstatementValidator validator; DefaultDenyWriteStatementSupport(final StatementDefinition definition) { - super(definition); + super(definition, CopyPolicy.CONTEXT_INDEPENDENT); this.validator = SubstatementValidator.builder(definition).build(); } diff --git a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/AliasStatementSupport.java b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/AliasStatementSupport.java index 7dc966f19b..a7020b236b 100644 --- a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/AliasStatementSupport.java +++ b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/AliasStatementSupport.java @@ -33,7 +33,7 @@ public final class AliasStatementSupport private static final AliasStatementSupport INSTANCE = new AliasStatementSupport(); private AliasStatementSupport() { - super(IetfYangSmiv2ExtensionsMapping.ALIAS); + super(IetfYangSmiv2ExtensionsMapping.ALIAS, CopyPolicy.CONTEXT_INDEPENDENT); } public static AliasStatementSupport getInstance() { diff --git a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DefValStatementSupport.java b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DefValStatementSupport.java index 97954128df..2ef5b13e89 100644 --- a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DefValStatementSupport.java +++ b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DefValStatementSupport.java @@ -27,7 +27,7 @@ public final class DefValStatementSupport private static final DefValStatementSupport INSTANCE = new DefValStatementSupport(); private DefValStatementSupport() { - super(IetfYangSmiv2ExtensionsMapping.DEFVAL); + super(IetfYangSmiv2ExtensionsMapping.DEFVAL, CopyPolicy.CONTEXT_INDEPENDENT); } public static DefValStatementSupport getInstance() { diff --git a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DisplayHintStatementSupport.java b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DisplayHintStatementSupport.java index baf77f9d16..48d9ae9cb4 100644 --- a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DisplayHintStatementSupport.java +++ b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/DisplayHintStatementSupport.java @@ -27,7 +27,7 @@ public final class DisplayHintStatementSupport private static final DisplayHintStatementSupport INSTANCE = new DisplayHintStatementSupport(); private DisplayHintStatementSupport() { - super(IetfYangSmiv2ExtensionsMapping.DISPLAY_HINT); + super(IetfYangSmiv2ExtensionsMapping.DISPLAY_HINT, CopyPolicy.CONTEXT_INDEPENDENT); } public static DisplayHintStatementSupport getInstance() { diff --git a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/ImpliedStatementSupport.java b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/ImpliedStatementSupport.java index 12dba310d1..aa47a79ff6 100644 --- a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/ImpliedStatementSupport.java +++ b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/ImpliedStatementSupport.java @@ -27,7 +27,7 @@ public final class ImpliedStatementSupport private static final ImpliedStatementSupport INSTANCE = new ImpliedStatementSupport(); private ImpliedStatementSupport() { - super(IetfYangSmiv2ExtensionsMapping.IMPLIED); + super(IetfYangSmiv2ExtensionsMapping.IMPLIED, CopyPolicy.CONTEXT_INDEPENDENT); } public static ImpliedStatementSupport getInstance() { diff --git a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/MaxAccessStatementSupport.java b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/MaxAccessStatementSupport.java index 5355e8f8df..6d321e70ef 100644 --- a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/MaxAccessStatementSupport.java +++ b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/MaxAccessStatementSupport.java @@ -29,7 +29,7 @@ public final class MaxAccessStatementSupport private static final MaxAccessStatementSupport INSTANCE = new MaxAccessStatementSupport(); private MaxAccessStatementSupport() { - super(IetfYangSmiv2ExtensionsMapping.MAX_ACCESS); + super(IetfYangSmiv2ExtensionsMapping.MAX_ACCESS, CopyPolicy.CONTEXT_INDEPENDENT); } public static MaxAccessStatementSupport getInstance() { diff --git a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/OidStatementSupport.java b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/OidStatementSupport.java index 9cb5a28b93..f8b5d4465a 100644 --- a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/OidStatementSupport.java +++ b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/OidStatementSupport.java @@ -29,7 +29,7 @@ public final class OidStatementSupport private static final OidStatementSupport INSTANCE = new OidStatementSupport(); private OidStatementSupport() { - super(IetfYangSmiv2ExtensionsMapping.OBJECT_ID); + super(IetfYangSmiv2ExtensionsMapping.OBJECT_ID, CopyPolicy.CONTEXT_INDEPENDENT); } public static OidStatementSupport getInstance() { diff --git a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/SubIdStatementSupport.java b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/SubIdStatementSupport.java index b90058069f..9cf7e65cf9 100644 --- a/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/SubIdStatementSupport.java +++ b/yang/rfc6643-parser-support/src/main/java/org/opendaylight/yangtools/rfc6643/parser/SubIdStatementSupport.java @@ -28,7 +28,7 @@ public final class SubIdStatementSupport private static final SubIdStatementSupport INSTANCE = new SubIdStatementSupport(); private SubIdStatementSupport() { - super(IetfYangSmiv2ExtensionsMapping.SUB_ID); + super(IetfYangSmiv2ExtensionsMapping.SUB_ID, CopyPolicy.CONTEXT_INDEPENDENT); } public static SubIdStatementSupport getInstance() { diff --git a/yang/rfc7952-parser-support/src/main/java/org/opendaylight/yangtools/rfc7952/parser/AnnotationStatementSupport.java b/yang/rfc7952-parser-support/src/main/java/org/opendaylight/yangtools/rfc7952/parser/AnnotationStatementSupport.java index afd567d76d..f28066e43d 100644 --- a/yang/rfc7952-parser-support/src/main/java/org/opendaylight/yangtools/rfc7952/parser/AnnotationStatementSupport.java +++ b/yang/rfc7952-parser-support/src/main/java/org/opendaylight/yangtools/rfc7952/parser/AnnotationStatementSupport.java @@ -31,6 +31,7 @@ import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.BaseStatementSupport; 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.StmtContextUtils; @@ -104,7 +105,7 @@ public final class AnnotationStatementSupport private final SubstatementValidator validator; AnnotationStatementSupport(final StatementDefinition definition) { - super(definition); + super(definition, CopyPolicy.REJECT); this.validator = SubstatementValidator.builder(definition) .addMandatory(YangStmtMapping.TYPE) .addOptional(YangStmtMapping.DESCRIPTION) diff --git a/yang/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java b/yang/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java index ec6c27617a..daf90f089d 100644 --- a/yang/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java +++ b/yang/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java @@ -20,6 +20,7 @@ import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition; import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.AbstractDeclaredStatement.WithRawStringArgument.WithSubstatements; import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.BaseStringStatementSupport; import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current; +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; @@ -42,7 +43,7 @@ public final class YangDataStatementSupport private final SubstatementValidator validator; private YangDataStatementSupport(final StatementDefinition definition) { - super(definition); + super(definition, CopyPolicy.REJECT); validator = SubstatementValidator.builder(definition) .addMandatory(YangStmtMapping.CONTAINER) .addOptional(YangStmtMapping.USES) diff --git a/yang/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementSupport.java b/yang/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementSupport.java index 7579e543e2..d89d456637 100644 --- a/yang/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementSupport.java +++ b/yang/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementSupport.java @@ -76,7 +76,7 @@ public final class MountPointStatementSupport private final SubstatementValidator validator; MountPointStatementSupport(final StatementDefinition definition) { - super(definition); + super(definition, CopyPolicy.DECLARED_COPY); this.validator = SubstatementValidator.builder(definition) .addOptional(YangStmtMapping.CONFIG) .addOptional(YangStmtMapping.DESCRIPTION) diff --git a/yang/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/StatementContextBase.java b/yang/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/StatementContextBase.java index 6903620c32..f40c4cae84 100644 --- a/yang/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/StatementContextBase.java +++ b/yang/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/StatementContextBase.java @@ -599,7 +599,8 @@ public abstract class StatementContextBase, E // This statement is context-independent and has no substatements -- hence it can be freely shared. return Optional.of(replicaAsChildOf(parent)); } - // FIXME: YANGTOOLS-694: filter out all context-independent substatements, eliminate fall-through + // ascertaining substatements could be quite costly, let's just fall through to declared copy and deal + // shortcut it when we build the statements. // fall through case DECLARED_COPY: // FIXME: YANGTOOLS-694: this is still to eager, we really want to copy as a lazily-instantiated diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/openconfig/stmt/OpenConfigVersionSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/openconfig/stmt/OpenConfigVersionSupport.java index dec0395b51..56d8c1290c 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/openconfig/stmt/OpenConfigVersionSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/openconfig/stmt/OpenConfigVersionSupport.java @@ -28,7 +28,7 @@ public final class OpenConfigVersionSupport private static final OpenConfigVersionSupport INSTANCE = new OpenConfigVersionSupport(); private OpenConfigVersionSupport() { - super(OpenConfigStatements.OPENCONFIG_VERSION); + super(OpenConfigStatements.OPENCONFIG_VERSION, CopyPolicy.REJECT); } public static OpenConfigVersionSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseBooleanStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseBooleanStatementSupport.java index e7cc8147c9..59ae7bd101 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseBooleanStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseBooleanStatementSupport.java @@ -33,8 +33,8 @@ public abstract class BaseBooleanStatementSupport, E extends SchemaTreeEffectiveStatement> extends BaseSchemaTreeStatementSupport { - protected BaseImplicitStatementSupport(final StatementDefinition publicDefinition) { - super(publicDefinition); + protected BaseImplicitStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) { + super(publicDefinition, copyPolicy); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseInternedStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseInternedStatementSupport.java index c9d2a3cfd0..1036544053 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseInternedStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseInternedStatementSupport.java @@ -47,8 +47,8 @@ public abstract class BaseInternedStatementSupport createArgument; protected BaseOperationContainerStatementSupport(final StatementDefinition publicDefinition, - final Function createArgument) { - super(publicDefinition); + final Function createArgument, final CopyPolicy copyPolicy) { + super(publicDefinition, copyPolicy); this.createArgument = requireNonNull(createArgument); } diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseQNameStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseQNameStatementSupport.java index 57a9e0016b..1dfbc35dcc 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseQNameStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseQNameStatementSupport.java @@ -29,10 +29,6 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; @Beta public abstract class BaseQNameStatementSupport, E extends EffectiveStatement> extends BaseStatementSupport { - protected BaseQNameStatementSupport(final StatementDefinition publicDefinition) { - super(publicDefinition); - } - protected BaseQNameStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) { super(publicDefinition, copyPolicy); } diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseSchemaTreeStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseSchemaTreeStatementSupport.java index 5139b6cd92..d2bf35dc8a 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseSchemaTreeStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseSchemaTreeStatementSupport.java @@ -25,10 +25,6 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils; */ public abstract class BaseSchemaTreeStatementSupport, E extends SchemaTreeEffectiveStatement> extends BaseQNameStatementSupport { - protected BaseSchemaTreeStatementSupport(final StatementDefinition publicDefinition) { - super(publicDefinition); - } - protected BaseSchemaTreeStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) { super(publicDefinition, copyPolicy); } diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStatementSupport.java index 785a1f194b..e60164a92a 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStatementSupport.java @@ -37,9 +37,6 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; @Beta public abstract class BaseStatementSupport, E extends EffectiveStatement> extends AbstractStatementSupport { - protected BaseStatementSupport(final StatementDefinition publicDefinition) { - super(publicDefinition); - } protected BaseStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) { super(publicDefinition, copyPolicy); diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStringStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStringStatementSupport.java index c50e0b75ec..ab74654699 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStringStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseStringStatementSupport.java @@ -23,8 +23,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; @Beta public abstract class BaseStringStatementSupport, E extends EffectiveStatement> extends BaseStatementSupport { - protected BaseStringStatementSupport(final StatementDefinition publicDefinition) { - super(publicDefinition, CopyPolicy.CONTEXT_INDEPENDENT); + protected BaseStringStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) { + super(publicDefinition, copyPolicy); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseVoidStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseVoidStatementSupport.java index 2172612c7f..532a1ad626 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseVoidStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/BaseVoidStatementSupport.java @@ -16,8 +16,8 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; @Beta public abstract class BaseVoidStatementSupport, E extends EffectiveStatement> extends BaseStatementSupport { - protected BaseVoidStatementSupport(final StatementDefinition publicDefinition) { - super(publicDefinition, CopyPolicy.CONTEXT_INDEPENDENT); + protected BaseVoidStatementSupport(final StatementDefinition publicDefinition, final CopyPolicy copyPolicy) { + super(publicDefinition, copyPolicy); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/action/ActionStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/action/ActionStatementSupport.java index 0960e9ab62..e8ff16105f 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/action/ActionStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/action/ActionStatementSupport.java @@ -54,7 +54,7 @@ public final class ActionStatementSupport extends private static final ActionStatementSupport INSTANCE = new ActionStatementSupport(); private ActionStatementSupport() { - super(YangStmtMapping.ACTION); + super(YangStmtMapping.ACTION, CopyPolicy.DECLARED_COPY); } public static ActionStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anydata/AnydataStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anydata/AnydataStatementSupport.java index f6e69025ed..07aebbfa49 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anydata/AnydataStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anydata/AnydataStatementSupport.java @@ -42,7 +42,7 @@ public final class AnydataStatementSupport private static final AnydataStatementSupport INSTANCE = new AnydataStatementSupport(); private AnydataStatementSupport() { - super(YangStmtMapping.ANYDATA); + super(YangStmtMapping.ANYDATA, CopyPolicy.DECLARED_COPY); } public static AnydataStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anyxml/AnyxmlStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anyxml/AnyxmlStatementSupport.java index e78b7e74b8..7f907b513e 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anyxml/AnyxmlStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/anyxml/AnyxmlStatementSupport.java @@ -42,7 +42,7 @@ public final class AnyxmlStatementSupport private static final AnyxmlStatementSupport INSTANCE = new AnyxmlStatementSupport(); private AnyxmlStatementSupport() { - super(YangStmtMapping.ANYXML); + super(YangStmtMapping.ANYXML, CopyPolicy.DECLARED_COPY); } public static AnyxmlStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/argument/ArgumentStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/argument/ArgumentStatementSupport.java index 51ed38e1ee..59a3c4b17b 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/argument/ArgumentStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/argument/ArgumentStatementSupport.java @@ -29,7 +29,7 @@ public final class ArgumentStatementSupport private static final ArgumentStatementSupport INSTANCE = new ArgumentStatementSupport(); private ArgumentStatementSupport() { - super(YangStmtMapping.ARGUMENT); + super(YangStmtMapping.ARGUMENT, CopyPolicy.REJECT); } public static ArgumentStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java index 815efe1e4d..6fdcc05308 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java @@ -48,7 +48,7 @@ abstract class AbstractAugmentStatementSupport private static final Pattern PATH_REL_PATTERN2 = Pattern.compile("//.*"); AbstractAugmentStatementSupport() { - super(YangStmtMapping.AUGMENT); + super(YangStmtMapping.AUGMENT, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/base/BaseStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/base/BaseStatementSupport.java index b590e7ba5a..5b03055da8 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/base/BaseStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/base/BaseStatementSupport.java @@ -36,7 +36,7 @@ public final class BaseStatementSupport extends BaseQNameStatementSupport { AbstractBitStatementSupport() { - super(YangStmtMapping.BIT); + super(YangStmtMapping.BIT, CopyPolicy.CONTEXT_INDEPENDENT); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/case_/AbstractCaseStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/case_/AbstractCaseStatementSupport.java index dae37aa640..c94c4297da 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/case_/AbstractCaseStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/case_/AbstractCaseStatementSupport.java @@ -33,7 +33,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractCaseStatementSupport extends BaseImplicitStatementSupport { AbstractCaseStatementSupport() { - super(YangStmtMapping.CASE); + super(YangStmtMapping.CASE, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/choice/AbstractChoiceStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/choice/AbstractChoiceStatementSupport.java index 774bdab0c3..26ce10edc7 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/choice/AbstractChoiceStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/choice/AbstractChoiceStatementSupport.java @@ -38,7 +38,7 @@ abstract class AbstractChoiceStatementSupport extends BaseSchemaTreeStatementSupport implements ImplicitParentAwareStatementSupport { AbstractChoiceStatementSupport() { - super(YangStmtMapping.CHOICE); + super(YangStmtMapping.CHOICE, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/config/ConfigStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/config/ConfigStatementSupport.java index 413f24e347..1990615667 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/config/ConfigStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/config/ConfigStatementSupport.java @@ -25,7 +25,7 @@ public final class ConfigStatementSupport private ConfigStatementSupport() { super(YangStmtMapping.CONFIG, new EmptyConfigEffectiveStatement(new EmptyConfigStatement(Boolean.FALSE)), - new EmptyConfigEffectiveStatement(new EmptyConfigStatement(Boolean.TRUE))); + new EmptyConfigEffectiveStatement(new EmptyConfigStatement(Boolean.TRUE)), CopyPolicy.CONTEXT_INDEPENDENT); } public static ConfigStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/contact/ContactStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/contact/ContactStatementSupport.java index 4070890a3c..7367dc2073 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/contact/ContactStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/contact/ContactStatementSupport.java @@ -25,7 +25,7 @@ public final class ContactStatementSupport private static final ContactStatementSupport INSTANCE = new ContactStatementSupport(); private ContactStatementSupport() { - super(YangStmtMapping.CONTACT); + super(YangStmtMapping.CONTACT, CopyPolicy.REJECT); } public static ContactStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/container/AbstractContainerStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/container/AbstractContainerStatementSupport.java index 95aca9f8f7..463174c58e 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/container/AbstractContainerStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/container/AbstractContainerStatementSupport.java @@ -30,7 +30,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractContainerStatementSupport extends BaseSchemaTreeStatementSupport { AbstractContainerStatementSupport() { - super(YangStmtMapping.CONTAINER); + super(YangStmtMapping.CONTAINER, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/default_/DefaultStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/default_/DefaultStatementSupport.java index 456f3ee2b3..0c98ecdd9b 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/default_/DefaultStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/default_/DefaultStatementSupport.java @@ -25,7 +25,8 @@ public final class DefaultStatementSupport private static final DefaultStatementSupport INSTANCE = new DefaultStatementSupport(); private DefaultStatementSupport() { - super(YangStmtMapping.DEFAULT); + // Note: if we start interpreting the string we'll need to use CopyPolicy.DECLARED_COPY + super(YangStmtMapping.DEFAULT, CopyPolicy.CONTEXT_INDEPENDENT); } public static DefaultStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/description/DescriptionStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/description/DescriptionStatementSupport.java index 7bf1f666e2..5b94aff9ce 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/description/DescriptionStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/description/DescriptionStatementSupport.java @@ -25,7 +25,7 @@ public final class DescriptionStatementSupport private static final DescriptionStatementSupport INSTANCE = new DescriptionStatementSupport(); private DescriptionStatementSupport() { - super(YangStmtMapping.DESCRIPTION); + super(YangStmtMapping.DESCRIPTION, CopyPolicy.CONTEXT_INDEPENDENT); } public static DescriptionStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviate/AbstractDeviateStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviate/AbstractDeviateStatementSupport.java index 03a8fbcc48..337cfbd6c9 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviate/AbstractDeviateStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviate/AbstractDeviateStatementSupport.java @@ -100,7 +100,7 @@ abstract class AbstractDeviateStatementSupport YangStmtMapping.MANDATORY, YangStmtMapping.MAX_ELEMENTS, YangStmtMapping.MIN_ELEMENTS); AbstractDeviateStatementSupport() { - super(YangStmtMapping.DEVIATE); + super(YangStmtMapping.DEVIATE, CopyPolicy.CONTEXT_INDEPENDENT); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviation/DeviationStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviation/DeviationStatementSupport.java index eea25b2bb6..8b5bfe66de 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviation/DeviationStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/deviation/DeviationStatementSupport.java @@ -36,7 +36,7 @@ public final class DeviationStatementSupport private static final DeviationStatementSupport INSTANCE = new DeviationStatementSupport(); private DeviationStatementSupport() { - super(YangStmtMapping.DEVIATION); + super(YangStmtMapping.DEVIATION, CopyPolicy.REJECT); } public static DeviationStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/enum_/AbstractEnumStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/enum_/AbstractEnumStatementSupport.java index a2948dcc6f..efc3c917b6 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/enum_/AbstractEnumStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/enum_/AbstractEnumStatementSupport.java @@ -20,7 +20,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; abstract class AbstractEnumStatementSupport extends BaseStatementSupport { AbstractEnumStatementSupport() { - super(YangStmtMapping.ENUM); + super(YangStmtMapping.ENUM, CopyPolicy.CONTEXT_INDEPENDENT); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_app_tag/ErrorAppTagStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_app_tag/ErrorAppTagStatementSupport.java index 245b9b043b..f60b89bda0 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_app_tag/ErrorAppTagStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_app_tag/ErrorAppTagStatementSupport.java @@ -25,7 +25,7 @@ public final class ErrorAppTagStatementSupport private static final ErrorAppTagStatementSupport INSTANCE = new ErrorAppTagStatementSupport(); private ErrorAppTagStatementSupport() { - super(YangStmtMapping.ERROR_APP_TAG); + super(YangStmtMapping.ERROR_APP_TAG, CopyPolicy.CONTEXT_INDEPENDENT); } public static ErrorAppTagStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_message/ErrorMessageStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_message/ErrorMessageStatementSupport.java index 37b520f5d8..b1bf6410e7 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_message/ErrorMessageStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/error_message/ErrorMessageStatementSupport.java @@ -25,7 +25,7 @@ public final class ErrorMessageStatementSupport private static final ErrorMessageStatementSupport INSTANCE = new ErrorMessageStatementSupport(); private ErrorMessageStatementSupport() { - super(YangStmtMapping.ERROR_MESSAGE); + super(YangStmtMapping.ERROR_MESSAGE, CopyPolicy.CONTEXT_INDEPENDENT); } public static ErrorMessageStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ExtensionStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ExtensionStatementSupport.java index 893149208d..29fec15bb1 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ExtensionStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ExtensionStatementSupport.java @@ -46,7 +46,7 @@ public final class ExtensionStatementSupport new ThreadLocal<>(); private ExtensionStatementSupport() { - super(YangStmtMapping.EXTENSION); + super(YangStmtMapping.EXTENSION, CopyPolicy.REJECT); } public static ExtensionStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ModelDefinedStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ModelDefinedStatementSupport.java index 5cbebdd0fb..31ad29a9af 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ModelDefinedStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/ModelDefinedStatementSupport.java @@ -29,7 +29,7 @@ final class ModelDefinedStatementSupport private final UnrecognizedStatementSupport definition; ModelDefinedStatementSupport(final ModelDefinedStatementDefinition publicDefinition) { - super(publicDefinition); + super(publicDefinition, CopyPolicy.DECLARED_COPY); this.definition = new UnrecognizedStatementSupport(publicDefinition); } diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/UnrecognizedStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/UnrecognizedStatementSupport.java index e6c906fd8e..8d5017e2cb 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/UnrecognizedStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/extension/UnrecognizedStatementSupport.java @@ -25,7 +25,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator; final class UnrecognizedStatementSupport extends BaseStatementSupport { UnrecognizedStatementSupport(final StatementDefinition publicDefinition) { - super(publicDefinition); + super(publicDefinition, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/feature/FeatureStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/feature/FeatureStatementSupport.java index 266d9ce22d..5a822af897 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/feature/FeatureStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/feature/FeatureStatementSupport.java @@ -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); + super(YangStmtMapping.FEATURE, CopyPolicy.REJECT); } public static FeatureStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/grouping/AbstractGroupingStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/grouping/AbstractGroupingStatementSupport.java index 2ec6492fe2..b36fa07f24 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/grouping/AbstractGroupingStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/grouping/AbstractGroupingStatementSupport.java @@ -32,7 +32,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractGroupingStatementSupport extends BaseQNameStatementSupport { AbstractGroupingStatementSupport() { - super(YangStmtMapping.GROUPING); + super(YangStmtMapping.GROUPING, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/identity/AbstractIdentityStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/identity/AbstractIdentityStatementSupport.java index 3e8d203b03..2dcb59329b 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/identity/AbstractIdentityStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/identity/AbstractIdentityStatementSupport.java @@ -38,7 +38,7 @@ abstract class AbstractIdentityStatementSupport extends BaseQNameStatementSupport { AbstractIdentityStatementSupport() { - super(YangStmtMapping.IDENTITY); + super(YangStmtMapping.IDENTITY, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/AbstractImportStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/AbstractImportStatementSupport.java index 2ad26bad3b..7248eb9238 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/AbstractImportStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/AbstractImportStatementSupport.java @@ -46,7 +46,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractImportStatementSupport extends BaseStringStatementSupport { AbstractImportStatementSupport() { - super(YangStmtMapping.IMPORT); + super(YangStmtMapping.IMPORT, CopyPolicy.REJECT); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/include/AbstractIncludeStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/include/AbstractIncludeStatementSupport.java index 946292616b..0e24c48154 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/include/AbstractIncludeStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/include/AbstractIncludeStatementSupport.java @@ -39,7 +39,7 @@ abstract class AbstractIncludeStatementSupport extends BaseStringStatementSupport { AbstractIncludeStatementSupport() { - super(YangStmtMapping.INCLUDE); + super(YangStmtMapping.INCLUDE, CopyPolicy.REJECT); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/input/AbstractInputStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/input/AbstractInputStatementSupport.java index ff1342a852..e164f60b2f 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/input/AbstractInputStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/input/AbstractInputStatementSupport.java @@ -25,7 +25,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractInputStatementSupport extends BaseOperationContainerStatementSupport { AbstractInputStatementSupport() { - super(YangStmtMapping.INPUT, YangConstants::operationInputQName); + super(YangStmtMapping.INPUT, YangConstants::operationInputQName, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/key/KeyStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/key/KeyStatementSupport.java index cb5d1df086..b1466b2cf3 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/key/KeyStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/key/KeyStatementSupport.java @@ -38,7 +38,7 @@ public final class KeyStatementSupport private static final KeyStatementSupport INSTANCE = new KeyStatementSupport(); private KeyStatementSupport() { - super(YangStmtMapping.KEY); + super(YangStmtMapping.KEY, CopyPolicy.DECLARED_COPY); } public static KeyStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/leaf/LeafStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/leaf/LeafStatementSupport.java index 961d14f4ad..0b89b5b5c3 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/leaf/LeafStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/leaf/LeafStatementSupport.java @@ -49,7 +49,7 @@ public final class LeafStatementSupport extends BaseSchemaTreeStatementSupport { AbstractLeafListStatementSupport() { - super(YangStmtMapping.LEAF_LIST); + super(YangStmtMapping.LEAF_LIST, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/list/AbstractListStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/list/AbstractListStatementSupport.java index 04236ecc1d..9fcb7b8c6b 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/list/AbstractListStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/list/AbstractListStatementSupport.java @@ -57,7 +57,7 @@ abstract class AbstractListStatementSupport extends YangStmtMapping.GROUPING, YangStmtMapping.NOTIFICATION, YangStmtMapping.INPUT, YangStmtMapping.OUTPUT); AbstractListStatementSupport() { - super(YangStmtMapping.LIST); + super(YangStmtMapping.LIST, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/mandatory/MandatoryStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/mandatory/MandatoryStatementSupport.java index 8008a6a9cd..de0bbf9bb2 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/mandatory/MandatoryStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/mandatory/MandatoryStatementSupport.java @@ -26,7 +26,8 @@ public final class MandatoryStatementSupport extends private MandatoryStatementSupport() { super(YangStmtMapping.MANDATORY, new EmptyMandatoryEffectiveStatement(new EmptyMandatoryStatement(Boolean.FALSE)), - new EmptyMandatoryEffectiveStatement(new EmptyMandatoryStatement(Boolean.TRUE))); + new EmptyMandatoryEffectiveStatement(new EmptyMandatoryStatement(Boolean.TRUE)), + CopyPolicy.CONTEXT_INDEPENDENT); } public static MandatoryStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/max_elements/MaxElementsStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/max_elements/MaxElementsStatementSupport.java index eb7c9f7200..fb2b4cc69a 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/max_elements/MaxElementsStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/max_elements/MaxElementsStatementSupport.java @@ -26,7 +26,7 @@ public final class MaxElementsStatementSupport private static final MaxElementsStatementSupport INSTANCE = new MaxElementsStatementSupport(); private MaxElementsStatementSupport() { - super(YangStmtMapping.MAX_ELEMENTS); + super(YangStmtMapping.MAX_ELEMENTS, CopyPolicy.CONTEXT_INDEPENDENT); } public static MaxElementsStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/min_elements/MinElementsStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/min_elements/MinElementsStatementSupport.java index 16be0b441a..3fb7310c66 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/min_elements/MinElementsStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/min_elements/MinElementsStatementSupport.java @@ -26,7 +26,7 @@ public final class MinElementsStatementSupport private static final MinElementsStatementSupport INSTANCE = new MinElementsStatementSupport(); private MinElementsStatementSupport() { - super(YangStmtMapping.MIN_ELEMENTS); + super(YangStmtMapping.MIN_ELEMENTS, CopyPolicy.CONTEXT_INDEPENDENT); } public static MinElementsStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/modifier/ModifierStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/modifier/ModifierStatementSupport.java index a5681b77f7..e731301af9 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/modifier/ModifierStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/modifier/ModifierStatementSupport.java @@ -27,7 +27,7 @@ public final class ModifierStatementSupport private static final ModifierStatementSupport INSTANCE = new ModifierStatementSupport(); private ModifierStatementSupport() { - super(YangStmtMapping.MODIFIER); + super(YangStmtMapping.MODIFIER, CopyPolicy.CONTEXT_INDEPENDENT); } public static ModifierStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/AbstractModuleStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/AbstractModuleStatementSupport.java index b8792eb447..35b4228d66 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/AbstractModuleStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/AbstractModuleStatementSupport.java @@ -61,7 +61,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractModuleStatementSupport extends BaseStatementSupport { AbstractModuleStatementSupport() { - super(YangStmtMapping.MODULE); + super(YangStmtMapping.MODULE, CopyPolicy.REJECT); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/must/MustStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/must/MustStatementSupport.java index f163b344e1..8de1752220 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/must/MustStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/must/MustStatementSupport.java @@ -36,7 +36,8 @@ public final class MustStatementSupport private final @NonNull XPathSupport xpathSupport; private MustStatementSupport(final XPathSupport xpathSupport) { - super(YangStmtMapping.MUST); + // Note: declared copy to future-proof when we bind expressions + super(YangStmtMapping.MUST, CopyPolicy.DECLARED_COPY); this.xpathSupport = requireNonNull(xpathSupport); } diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/namespace/NamespaceStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/namespace/NamespaceStatementSupport.java index 876b177c23..40fc5d6717 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/namespace/NamespaceStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/namespace/NamespaceStatementSupport.java @@ -30,7 +30,7 @@ public final class NamespaceStatementSupport private static final NamespaceStatementSupport INSTANCE = new NamespaceStatementSupport(); private NamespaceStatementSupport() { - super(YangStmtMapping.NAMESPACE); + super(YangStmtMapping.NAMESPACE, CopyPolicy.REJECT); } public static NamespaceStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/AbstractNotificationStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/AbstractNotificationStatementSupport.java index 5fa993bce5..b57746b313 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/AbstractNotificationStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/notification/AbstractNotificationStatementSupport.java @@ -23,7 +23,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractNotificationStatementSupport extends BaseSchemaTreeStatementSupport { AbstractNotificationStatementSupport() { - super(YangStmtMapping.NOTIFICATION); + super(YangStmtMapping.NOTIFICATION, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/organization/OrganizationStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/organization/OrganizationStatementSupport.java index e6c4e16207..0b840e8a52 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/organization/OrganizationStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/organization/OrganizationStatementSupport.java @@ -26,7 +26,7 @@ public final class OrganizationStatementSupport private static final OrganizationStatementSupport INSTANCE = new OrganizationStatementSupport(); private OrganizationStatementSupport() { - super(YangStmtMapping.ORGANIZATION); + super(YangStmtMapping.ORGANIZATION, CopyPolicy.REJECT); } public static OrganizationStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/output/AbstractOutputStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/output/AbstractOutputStatementSupport.java index f69ed03096..b83375538a 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/output/AbstractOutputStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/output/AbstractOutputStatementSupport.java @@ -25,7 +25,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractOutputStatementSupport extends BaseOperationContainerStatementSupport { AbstractOutputStatementSupport() { - super(YangStmtMapping.OUTPUT, YangConstants::operationOutputQName); + super(YangStmtMapping.OUTPUT, YangConstants::operationOutputQName, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/path/PathStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/path/PathStatementSupport.java index 9994c08506..662683e5f7 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/path/PathStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/path/PathStatementSupport.java @@ -33,7 +33,8 @@ public final class PathStatementSupport private final PathExpressionParser parser; private PathStatementSupport(final PathExpressionParser parser) { - super(YangStmtMapping.PATH); + // TODO: can 'path' really be copied? + super(YangStmtMapping.PATH, CopyPolicy.CONTEXT_INDEPENDENT); this.parser = requireNonNull(parser); } diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/position/PositionStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/position/PositionStatementSupport.java index 8248658860..4cb959816c 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/position/PositionStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/position/PositionStatementSupport.java @@ -26,7 +26,7 @@ public final class PositionStatementSupport private static final PositionStatementSupport INSTANCE = new PositionStatementSupport(); private PositionStatementSupport() { - super(YangStmtMapping.POSITION); + super(YangStmtMapping.POSITION, CopyPolicy.CONTEXT_INDEPENDENT); } public static PositionStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/prefix/PrefixStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/prefix/PrefixStatementSupport.java index 0590062f64..bb2203a0d2 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/prefix/PrefixStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/prefix/PrefixStatementSupport.java @@ -25,7 +25,7 @@ public final class PrefixStatementSupport private static final PrefixStatementSupport INSTANCE = new PrefixStatementSupport(); private PrefixStatementSupport() { - super(YangStmtMapping.PREFIX); + super(YangStmtMapping.PREFIX, CopyPolicy.REJECT); } public static PrefixStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/presence/PresenceStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/presence/PresenceStatementSupport.java index eb25cfe7b9..37e52a6d26 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/presence/PresenceStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/presence/PresenceStatementSupport.java @@ -25,7 +25,7 @@ public final class PresenceStatementSupport private static final PresenceStatementSupport INSTANCE = new PresenceStatementSupport(); private PresenceStatementSupport() { - super(YangStmtMapping.PRESENCE); + super(YangStmtMapping.PRESENCE, CopyPolicy.CONTEXT_INDEPENDENT); } public static PresenceStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/range/RangeStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/range/RangeStatementSupport.java index a40eaa2f7a..501364fa0c 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/range/RangeStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/range/RangeStatementSupport.java @@ -41,7 +41,7 @@ public final class RangeStatementSupport private static final RangeStatementSupport INSTANCE = new RangeStatementSupport(); private RangeStatementSupport() { - super(YangStmtMapping.RANGE); + super(YangStmtMapping.RANGE, CopyPolicy.CONTEXT_INDEPENDENT); } public static RangeStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/reference/ReferenceStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/reference/ReferenceStatementSupport.java index de577bff5b..a79a1a625d 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/reference/ReferenceStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/reference/ReferenceStatementSupport.java @@ -26,7 +26,7 @@ public final class ReferenceStatementSupport private static final ReferenceStatementSupport INSTANCE = new ReferenceStatementSupport(); private ReferenceStatementSupport() { - super(YangStmtMapping.REFERENCE); + super(YangStmtMapping.REFERENCE, CopyPolicy.CONTEXT_INDEPENDENT); } public static ReferenceStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/AbstractRefineStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/AbstractRefineStatementSupport.java index 031fcee405..8cbc0e2ef5 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/AbstractRefineStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/AbstractRefineStatementSupport.java @@ -24,7 +24,7 @@ abstract class AbstractRefineStatementSupport extends BaseStatementSupport { AbstractRefineStatementSupport() { - super(YangStmtMapping.REFINE); + super(YangStmtMapping.REFINE, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/require_instance/RequireInstanceStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/require_instance/RequireInstanceStatementSupport.java index f1ef050573..3c2562b337 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/require_instance/RequireInstanceStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/require_instance/RequireInstanceStatementSupport.java @@ -27,7 +27,8 @@ public final class RequireInstanceStatementSupport private RequireInstanceStatementSupport() { super(YangStmtMapping.REQUIRE_INSTANCE, new EmptyRequireInstanceEffectiveStatement(new EmptyRequireInstanceStatement(Boolean.FALSE)), - new EmptyRequireInstanceEffectiveStatement(new EmptyRequireInstanceStatement(Boolean.TRUE))); + new EmptyRequireInstanceEffectiveStatement(new EmptyRequireInstanceStatement(Boolean.TRUE)), + CopyPolicy.CONTEXT_INDEPENDENT); } public static RequireInstanceStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/revision/RevisionStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/revision/RevisionStatementSupport.java index 313b98ecf4..7881fc6468 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/revision/RevisionStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/revision/RevisionStatementSupport.java @@ -31,7 +31,7 @@ public final class RevisionStatementSupport private static final RevisionStatementSupport INSTANCE = new RevisionStatementSupport(); private RevisionStatementSupport() { - super(YangStmtMapping.REVISION); + super(YangStmtMapping.REVISION, CopyPolicy.REJECT); } public static RevisionStatementSupport getInstance() { diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/rpc/AbstractRpcStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/rpc/AbstractRpcStatementSupport.java index 197944dfd9..6c154fa144 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/rpc/AbstractRpcStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/rpc/AbstractRpcStatementSupport.java @@ -47,7 +47,7 @@ abstract class AbstractRpcStatementSupport extends BaseSchemaTreeStatementSuppor .build(); AbstractRpcStatementSupport() { - super(YangStmtMapping.RPC); + super(YangStmtMapping.RPC, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/submodule/AbstractSubmoduleStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/submodule/AbstractSubmoduleStatementSupport.java index 01f92681b9..16fb0c1bb0 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/submodule/AbstractSubmoduleStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/submodule/AbstractSubmoduleStatementSupport.java @@ -35,7 +35,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractSubmoduleStatementSupport extends BaseStatementSupport { AbstractSubmoduleStatementSupport() { - super(YangStmtMapping.SUBMODULE); + super(YangStmtMapping.SUBMODULE, CopyPolicy.REJECT); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractIdentityRefSpecificationSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractIdentityRefSpecificationSupport.java index 3ab84f828c..360c20508d 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractIdentityRefSpecificationSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractIdentityRefSpecificationSupport.java @@ -35,7 +35,7 @@ abstract class AbstractIdentityRefSpecificationSupport extends BaseStatementSupport> { AbstractIdentityRefSpecificationSupport() { - super(YangStmtMapping.TYPE); + super(YangStmtMapping.TYPE, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractLeafrefSpecificationSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractLeafrefSpecificationSupport.java index 345bcf4c5d..c893b03613 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractLeafrefSpecificationSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractLeafrefSpecificationSupport.java @@ -25,7 +25,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; abstract class AbstractLeafrefSpecificationSupport extends BaseStatementSupport> { AbstractLeafrefSpecificationSupport() { - super(YangStmtMapping.TYPE); + super(YangStmtMapping.TYPE, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractTypeStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractTypeStatementSupport.java index ebf7997f61..5e9f554fff 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractTypeStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractTypeStatementSupport.java @@ -154,7 +154,8 @@ abstract class AbstractTypeStatementSupport .build(); AbstractTypeStatementSupport() { - super(YangStmtMapping.TYPE); + // FIXME: can a type statement be copied? + super(YangStmtMapping.TYPE, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BitsSpecificationSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BitsSpecificationSupport.java index f90411fc22..22d6cbf321 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BitsSpecificationSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/BitsSpecificationSupport.java @@ -33,7 +33,7 @@ final class BitsSpecificationSupport .build(); BitsSpecificationSupport() { - super(YangStmtMapping.TYPE); + super(YangStmtMapping.TYPE, CopyPolicy.DECLARED_COPY); } @Override diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/Decimal64SpecificationSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/Decimal64SpecificationSupport.java index 3e784ca246..6adec8bba0 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/Decimal64SpecificationSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/Decimal64SpecificationSupport.java @@ -32,7 +32,7 @@ final class Decimal64SpecificationSupport extends BaseStatementSupport checkArgument(publicDefinition != this); } - protected AbstractStatementSupport(final StatementDefinition publicDefinition) { - this(publicDefinition, CopyPolicy.DECLARED_COPY); - } - @Override public final StatementDefinition getPublicView() { return type; -- 2.36.6