From 9d74a74a9d46ff8c6878bc7d76994782d938cddc Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 25 May 2021 10:11:05 +0200 Subject: [PATCH] Deprecate schema-aware builders Schema-aware builders do not add much in terms of functionality, as they are very limited in what they offer in terms of validation (no values) and are also hard to use, as the corresponding schema needs to be looked up separately. Deprecate all entrypoints for removal. JIRA: YANGTOOLS-1290 Change-Id: Ia4635d17bb5cef125e95ea187d9546de75cf8b31 Signed-off-by: Robert Varga --- .../yangtools/yang/data/impl/schema/Builders.java | 14 ++++++++++++++ .../ImmutableAnyXmlNodeSchemaAwareBuilder.java | 2 +- ...mmutableAugmentationNodeSchemaAwareBuilder.java | 2 +- .../ImmutableChoiceNodeSchemaAwareBuilder.java | 2 +- .../ImmutableContainerNodeSchemaAwareBuilder.java | 1 + .../impl/ImmutableLeafNodeSchemaAwareBuilder.java | 1 + ...mmutableLeafSetEntryNodeSchemaAwareBuilder.java | 1 + .../ImmutableLeafSetNodeSchemaAwareBuilder.java | 2 +- .../ImmutableMapEntryNodeSchemaAwareBuilder.java | 2 +- .../impl/ImmutableMapNodeSchemaAwareBuilder.java | 1 + ...utableOrderedLeafSetNodeSchemaAwareBuilder.java | 2 +- .../ImmutableOrderedMapNodeSchemaAwareBuilder.java | 1 + .../ImmutableYangModeledAnyXmlNodeBuilder.java | 2 +- 13 files changed, 26 insertions(+), 7 deletions(-) diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/Builders.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/Builders.java index 304f8525c1..ecf0b21be1 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/Builders.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/Builders.java @@ -74,6 +74,7 @@ public final class Builders { return ImmutableLeafNodeBuilder.create(); } + @Deprecated(since = "6.0.7", forRemoval = true) public static NormalizedNodeBuilder> leafBuilder( final LeafSchemaNode schema) { return ImmutableLeafNodeSchemaAwareBuilder.create(schema); @@ -83,6 +84,7 @@ public final class Builders { return ImmutableLeafSetEntryNodeBuilder.create(); } + @Deprecated(since = "6.0.7", forRemoval = true) public static NormalizedNodeBuilder> leafSetEntryBuilder( final LeafListSchemaNode schema) { return ImmutableLeafSetEntryNodeSchemaAwareBuilder.create(schema); @@ -92,11 +94,13 @@ public final class Builders { return ImmutableAnyXmlNodeBuilder.create(); } + @Deprecated(since = "6.0.7", forRemoval = true) public static NormalizedNodeBuilder anyXmlBuilder( final AnyxmlSchemaNode schema) { return ImmutableAnyXmlNodeSchemaAwareBuilder.create(schema); } + @Deprecated(since = "6.0.7", forRemoval = true) public static DataContainerNodeBuilder yangModeledAnyXmlBuilder( final YangModeledAnyxmlSchemaNode schema) { return ImmutableYangModeledAnyXmlNodeBuilder.create(schema); @@ -111,6 +115,7 @@ public final class Builders { return ImmutableOrderedLeafSetNodeBuilder.create(); } + @Deprecated(since = "6.0.7", forRemoval = true) public static ListNodeBuilder> orderedLeafSetBuilder(final LeafListSchemaNode schema) { return ImmutableOrderedLeafSetNodeSchemaAwareBuilder.create(schema); } @@ -123,10 +128,12 @@ public final class Builders { return ImmutableLeafSetNodeBuilder.create(node); } + @Deprecated(since = "6.0.7", forRemoval = true) public static ListNodeBuilder> leafSetBuilder(final LeafListSchemaNode schema) { return ImmutableLeafSetNodeSchemaAwareBuilder.create(schema); } + @Deprecated(since = "6.0.7", forRemoval = true) public static ListNodeBuilder> leafSetBuilder(final LeafListSchemaNode schema, final LeafSetNode node) { return ImmutableLeafSetNodeSchemaAwareBuilder.create(schema, node); @@ -141,10 +148,12 @@ public final class Builders { return ImmutableContainerNodeBuilder.create(node); } + @Deprecated(since = "6.0.7", forRemoval = true) public static DataContainerNodeBuilder containerBuilder(final ContainerLike schema) { return ImmutableContainerNodeSchemaAwareBuilder.create(schema); } + @Deprecated(since = "6.0.7", forRemoval = true) public static DataContainerNodeBuilder containerBuilder(final ContainerLike schema, final ContainerNode node) { return ImmutableContainerNodeSchemaAwareBuilder.create(schema, node); @@ -159,6 +168,7 @@ public final class Builders { return ImmutableMapEntryNodeBuilder.create(mapEntryNode); } + @Deprecated(since = "6.0.7", forRemoval = true) public static DataContainerNodeBuilder mapEntryBuilder( final ListSchemaNode schema) { return ImmutableMapEntryNodeSchemaAwareBuilder.create(schema); @@ -184,10 +194,12 @@ public final class Builders { return ImmutableMapNodeBuilder.create(node); } + @Deprecated(since = "6.0.7", forRemoval = true) public static CollectionNodeBuilder mapBuilder(final ListSchemaNode schema) { return ImmutableMapNodeSchemaAwareBuilder.create(schema); } + @Deprecated(since = "6.0.7", forRemoval = true) public static CollectionNodeBuilder mapBuilder(final ListSchemaNode schema, final MapNode node) { return ImmutableMapNodeSchemaAwareBuilder.create(schema, node); @@ -197,6 +209,7 @@ public final class Builders { return ImmutableAugmentationNodeBuilder.create(); } + @Deprecated(since = "6.0.7", forRemoval = true) public static DataContainerNodeBuilder augmentationBuilder( final AugmentationSchemaNode schema) { return ImmutableAugmentationNodeSchemaAwareBuilder.create(schema); @@ -206,6 +219,7 @@ public final class Builders { return ImmutableChoiceNodeBuilder.create(); } + @Deprecated(since = "6.0.7", forRemoval = true) public static DataContainerNodeBuilder choiceBuilder(final ChoiceSchemaNode schema) { return ImmutableChoiceNodeSchemaAwareBuilder.create(schema); } diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableAnyXmlNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableAnyXmlNodeSchemaAwareBuilder.java index c48e3e5c5a..654ee42ca8 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableAnyXmlNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableAnyXmlNodeSchemaAwareBuilder.java @@ -14,8 +14,8 @@ import org.opendaylight.yangtools.yang.data.api.schema.DOMSourceAnyxmlNode; import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeBuilder; import org.opendaylight.yangtools.yang.model.api.AnyxmlSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableAnyXmlNodeSchemaAwareBuilder extends ImmutableAnyXmlNodeBuilder { - private ImmutableAnyXmlNodeSchemaAwareBuilder(final AnyxmlSchemaNode schema) { super.withNodeIdentifier(NodeIdentifier.create(schema.getQName())); } diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableAugmentationNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableAugmentationNodeSchemaAwareBuilder.java index eea80cbb6d..d20e8abd5e 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableAugmentationNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableAugmentationNodeSchemaAwareBuilder.java @@ -16,8 +16,8 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataN import org.opendaylight.yangtools.yang.data.util.DataSchemaContextNode; import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public class ImmutableAugmentationNodeSchemaAwareBuilder extends ImmutableAugmentationNodeBuilder { - private final DataNodeContainerValidator validator; protected ImmutableAugmentationNodeSchemaAwareBuilder(final AugmentationSchemaNode schema) { diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableChoiceNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableChoiceNodeSchemaAwareBuilder.java index 2b56fb19b2..d4627c9c75 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableChoiceNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableChoiceNodeSchemaAwareBuilder.java @@ -21,8 +21,8 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataV import org.opendaylight.yangtools.yang.model.api.CaseSchemaNode; import org.opendaylight.yangtools.yang.model.api.ChoiceSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public class ImmutableChoiceNodeSchemaAwareBuilder extends ImmutableChoiceNodeBuilder { - private final ChoiceSchemaNode schema; private DataNodeContainerValidator validator; diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableContainerNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableContainerNodeSchemaAwareBuilder.java index 6e4a52a07b..4bca57edd5 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableContainerNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableContainerNodeSchemaAwareBuilder.java @@ -15,6 +15,7 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContaine import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataNodeContainerValidator; import org.opendaylight.yangtools.yang.model.api.ContainerLike; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableContainerNodeSchemaAwareBuilder extends ImmutableContainerNodeBuilder { private final DataNodeContainerValidator validator; diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafNodeSchemaAwareBuilder.java index a460ae404d..21145865bb 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafNodeSchemaAwareBuilder.java @@ -13,6 +13,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.LeafNode; import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeBuilder; import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableLeafNodeSchemaAwareBuilder extends ImmutableLeafNodeBuilder { private ImmutableLeafNodeSchemaAwareBuilder(final LeafSchemaNode schema) { super.withNodeIdentifier(NodeIdentifier.create(schema.getQName())); diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetEntryNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetEntryNodeSchemaAwareBuilder.java index e388aca40c..5d0948b29c 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetEntryNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetEntryNodeSchemaAwareBuilder.java @@ -15,6 +15,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode; import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeBuilder; import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableLeafSetEntryNodeSchemaAwareBuilder extends ImmutableLeafSetEntryNodeBuilder { private final LeafListSchemaNode schema; diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetNodeSchemaAwareBuilder.java index b913c7fcd7..0bb39a6663 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetNodeSchemaAwareBuilder.java @@ -19,8 +19,8 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.ListNodeBuil import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataValidationException; import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableLeafSetNodeSchemaAwareBuilder extends ImmutableLeafSetNodeBuilder { - private final LeafListSchemaNode schema; private ImmutableLeafSetNodeSchemaAwareBuilder(final LeafListSchemaNode schema) { diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapEntryNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapEntryNodeSchemaAwareBuilder.java index 557b7a57cf..701109a310 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapEntryNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapEntryNodeSchemaAwareBuilder.java @@ -25,8 +25,8 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataN import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataValidationException.IllegalListKeyException; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableMapEntryNodeSchemaAwareBuilder extends ImmutableMapEntryNodeBuilder { - private final ListSchemaNode schema; private final DataNodeContainerValidator validator; diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapNodeSchemaAwareBuilder.java index d747a4a895..412dbfe41b 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapNodeSchemaAwareBuilder.java @@ -18,6 +18,7 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNo import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataValidationException; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public class ImmutableMapNodeSchemaAwareBuilder extends ImmutableMapNodeBuilder { private final ListSchemaNode schema; diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedLeafSetNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedLeafSetNodeSchemaAwareBuilder.java index bbd103c4d3..0f66531fa7 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedLeafSetNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedLeafSetNodeSchemaAwareBuilder.java @@ -19,8 +19,8 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.ListNodeBuil import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataValidationException; import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableOrderedLeafSetNodeSchemaAwareBuilder extends ImmutableOrderedLeafSetNodeBuilder { - private final LeafListSchemaNode schema; private ImmutableOrderedLeafSetNodeSchemaAwareBuilder(final LeafListSchemaNode schema) { diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedMapNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedMapNodeSchemaAwareBuilder.java index d71f08cd7e..aa1b7cafff 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedMapNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedMapNodeSchemaAwareBuilder.java @@ -19,6 +19,7 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNo import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataValidationException; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public class ImmutableOrderedMapNodeSchemaAwareBuilder extends ImmutableOrderedMapNodeBuilder { private final ListSchemaNode schema; diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableYangModeledAnyXmlNodeBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableYangModeledAnyXmlNodeBuilder.java index ed45e08536..b8e2a09dd3 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableYangModeledAnyXmlNodeBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableYangModeledAnyXmlNodeBuilder.java @@ -19,9 +19,9 @@ import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContaine import org.opendaylight.yangtools.yang.data.impl.schema.nodes.AbstractImmutableDataContainerNode; import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableYangModeledAnyXmlNodeBuilder extends AbstractImmutableDataContainerNodeBuilder { - private final ContainerSchemaNode contentSchema; private ImmutableYangModeledAnyXmlNodeBuilder(final YangModeledAnyxmlSchemaNode yangModeledAnyXMLSchemaNode) { -- 2.36.6