From: Robert Varga Date: Mon, 23 May 2022 16:49:04 +0000 (+0200) Subject: Seal TypedDataSchemaNode X-Git-Tag: v9.0.0~45 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F66%2F101266%2F2;p=yangtools.git Seal TypedDataSchemaNode TypedDataSchemaNode is the common interface for Leaf(List)SchemaNode and should not be used separately. Make sure we seal it. Change-Id: Icf5592dc6e6906d9f828b9ed2090094d69527431 Signed-off-by: Robert Varga --- diff --git a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/LeafListSchemaNode.java b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/LeafListSchemaNode.java index f4ac0a103e..979ab7f5f9 100644 --- a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/LeafListSchemaNode.java +++ b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/LeafListSchemaNode.java @@ -14,8 +14,8 @@ import org.opendaylight.yangtools.yang.model.api.stmt.LeafListEffectiveStatement /** * Interface describing YANG 'leaf-list' statement. */ -public interface LeafListSchemaNode extends TypedDataSchemaNode, MustConstraintAware, ElementCountConstraintAware, - UserOrderedAware { +public non-sealed interface LeafListSchemaNode extends TypedDataSchemaNode, MustConstraintAware, + ElementCountConstraintAware, UserOrderedAware { /** * Return the default value of this leaf-list, as per the rules outlined in diff --git a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/LeafSchemaNode.java b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/LeafSchemaNode.java index 6a3eb9f852..b80b22aa32 100644 --- a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/LeafSchemaNode.java +++ b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/LeafSchemaNode.java @@ -17,7 +17,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.LeafEffectiveStatement; * Since we are presenting the effective model of the world, the information dictated by 'default' and 'units' * substatements is captured in the type returned via {@link #getType()}. */ -public interface LeafSchemaNode extends TypedDataSchemaNode, MandatoryAware, MustConstraintAware, +public non-sealed interface LeafSchemaNode extends TypedDataSchemaNode, MandatoryAware, MustConstraintAware, EffectiveStatementEquivalent { } diff --git a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/TypedDataSchemaNode.java b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/TypedDataSchemaNode.java index f6ff17dc4a..c58e8941ab 100644 --- a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/TypedDataSchemaNode.java +++ b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/TypedDataSchemaNode.java @@ -13,7 +13,8 @@ package org.opendaylight.yangtools.yang.model.api; * * @author Robert Varga */ -public interface TypedDataSchemaNode extends DataSchemaNode, TypeAware { +public sealed interface TypedDataSchemaNode extends DataSchemaNode, TypeAware + permits LeafSchemaNode, LeafListSchemaNode { /** * Returns type of the instance which implements DataSchemaNode. *