X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-parser-spi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Fspi%2Fmeta%2FStmtContext.java;h=15fb8fb6888be08d272e047533390c8a0df03382;hb=35536f9802bc1ae6fdf7435cbfed0cee58b47c68;hp=b9372e0fc0175d02f7604ad3e33144a4877bbdcb;hpb=95c6962044a966e200315a68dca9d541c7a1a019;p=yangtools.git diff --git a/yang/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/StmtContext.java b/yang/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/StmtContext.java index b9372e0fc0..15fb8fb688 100644 --- a/yang/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/StmtContext.java +++ b/yang/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/StmtContext.java @@ -37,7 +37,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.StatementSourceReferenc * @param Effective Statement representation */ public interface StmtContext, E extends EffectiveStatement> - extends BoundStmtCtx { + extends BoundStmtCtx, StmtContextCompat { @Deprecated(forRemoval = true) default @NonNull StatementDefinition getPublicDefinition() { return publicDefinition(); @@ -48,7 +48,7 @@ public interface StmtContext, E extends Effect return source(); } - // TODO: gradually migrate callers of this method + @Deprecated(forRemoval = true) default @NonNull StatementSourceReference getStatementSourceReference() { return sourceReference(); } @@ -57,8 +57,9 @@ public interface StmtContext, E extends Effect * Return the statement argument in literal format. * * @return raw statement argument string, or null if this statement does not have an argument. + * @deprecated Use {@link #rawArgument()} instead. */ - // TODO: gradually migrate callers of this method + @Deprecated(forRemoval = true) default @Nullable String rawStatementArgument() { return rawArgument(); } @@ -68,8 +69,9 @@ public interface StmtContext, E extends Effect * * @return raw statement argument string * @throws VerifyException if this statement does not have an argument + * @deprecated Use {@link #getRawArgument()} instead. */ - // TODO: gradually migrate callers of this method + @Deprecated(forRemoval = true) default @NonNull String coerceRawStatementArgument() { return getRawArgument(); } @@ -78,8 +80,9 @@ public interface StmtContext, E extends Effect * Return the statement argument. * * @return statement argument, or null if this statement does not have an argument + * @deprecated Use {@link #argument()} instead. */ - // TODO: gradually migrate callers of this method + @Deprecated(forRemoval = true) default @Nullable A getStatementArgument() { return argument(); } @@ -89,8 +92,9 @@ public interface StmtContext, E extends Effect * * @return raw statement argument string * @throws VerifyException if this statement does not have an argument + * @deprecated Use {@link #getArgument()} instead. */ - // TODO: gradually migrate callers of this method + @Deprecated(forRemoval = true) default @NonNull A coerceStatementArgument() { return getArgument(); } @@ -135,6 +139,11 @@ public interface StmtContext, E extends Effect > Map getAllFromCurrentStmtCtxNamespace(Class type); + /** + * Returns the model root for this statement. + * + * @return root context of statement + */ @NonNull RootStmtContext getRoot(); /** @@ -178,7 +187,7 @@ public interface StmtContext, E extends Effect /* * FIXME: YANGTOOLS-784: the next three methods are closely related to the copy process: - * - getCopyHistory() is a brief summary of what went on + * - copyHistory() is a brief summary of what went on * - getOriginalContext() points to the CopyHistory.ORIGINAL * - getPreviousCopyCtx() points to the immediate predecessor forming a singly-linked list terminated * at getOriginalContext() @@ -189,13 +198,6 @@ public interface StmtContext, E extends Effect * and hence should become arguments to that method. */ - /** - * Return the executive summary of the copy process that has produced this context. - * - * @return A simplified summary of the copy process. - */ - CopyHistory getCopyHistory(); - /** * Return the statement context of the original definition, if this statement is an instantiated copy. * @@ -213,13 +215,6 @@ public interface StmtContext, E extends Effect ModelProcessingPhase getCompletedPhase(); - /** - * Return version of root statement context. - * - * @return version of root statement context - */ - @NonNull YangVersion getRootVersion(); - /** * An mutable view of an inference context associated with an instance of a statement. * @@ -288,6 +283,17 @@ public interface StmtContext, E extends Effect return childCopyOf(stmt, type, null); } + /** + * Create a replica of this statement as a substatement of specified {@code parent}. The replica must not be + * modified and acts as a source of {@link EffectiveStatement} from outside of {@code parent}'s subtree. + * + * @param parent Parent of the replica statement + * @return replica of this statement + * @throws IllegalArgumentException if this statement cannot be replicated into parent, for example because it + * comes from an alien implementation. + */ + @NonNull Mutable replicaAsChildOf(Mutable parent); + @Beta @NonNull Optional> copyAsChildOf(Mutable parent, CopyType type, @Nullable QNameModule targetModule);