From: Robert Varga Date: Mon, 6 Sep 2021 22:34:25 +0000 (+0200) Subject: Deprecate UnknownSchemaNode.getExtensionDefinition() X-Git-Tag: v7.0.8~3 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=c765bc11395423d237ec2aa36083e741b5affb29;p=yangtools.git Deprecate UnknownSchemaNode.getExtensionDefinition() This method is not really useful, as its equivalent can easily be achieved via SchemaContext lookup. Deprecate it for removal. JIRA: YANGTOOLS-1319 Change-Id: Ia8f04e4843438988c999d966b72cb078b3f905e3 Signed-off-by: Robert Varga (cherry picked from commit 21591c31b5ac5e09697f3da891363b8b9a1c0cf8) --- diff --git a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/UnknownSchemaNode.java b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/UnknownSchemaNode.java index ca7d143567..192fdc4938 100644 --- a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/UnknownSchemaNode.java +++ b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/UnknownSchemaNode.java @@ -16,7 +16,8 @@ import org.opendaylight.yangtools.yang.model.api.stmt.UnknownEffectiveStatement; public interface UnknownSchemaNode extends SchemaNode, CopyableNode, EffectiveStatementEquivalent> { /** - * Returns QName instance with the name of the unknown node. + * Returns QName instance with the name of the unknown node. This corresponds to + * {@link ExtensionDefinition#getQName()} of the {@code extension} statement which defined it. * * @return QName with name the name of the unknown node. */ @@ -33,6 +34,10 @@ public interface UnknownSchemaNode extends SchemaNode, CopyableNode, * Get extension definition which identifies this node. * * @return extension definition if exists, null otherwise + * @deprecated This method is can cause cyclic dependencies in the object graph. Use + * {@link SchemaContext#getExtensions()} with {@link #getNodeType()} instead. */ + // FIXME: YANGTOOLS-1317: remove this method + @Deprecated(forRemoval = true, since = "7.0.8") ExtensionDefinition getExtensionDefinition(); } diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/UnknownEffectiveStatementBase.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/UnknownEffectiveStatementBase.java index f08f2ceb12..3382af1225 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/UnknownEffectiveStatementBase.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/UnknownEffectiveStatementBase.java @@ -82,6 +82,7 @@ public abstract class UnknownEffectiveStatementBase