X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=parser%2Fyang-parser-rfc7950%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Frfc7950%2Fstmt%2Flist%2FListStatementSupport.java;h=5c25cbf675de4335de3cfda181da4972419057a3;hb=303d81ba251f3b861c99595bb9562bcb348167d8;hp=0763ec8c48b8ac8724e8e38098b38f94e68b75b6;hpb=c47987c7ec76577a19c989dca59ee62bf10e1b2e;p=yangtools.git diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/list/ListStatementSupport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/list/ListStatementSupport.java index 0763ec8c48..5c25cbf675 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/list/ListStatementSupport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/list/ListStatementSupport.java @@ -41,6 +41,7 @@ import org.opendaylight.yangtools.yang.model.spi.meta.SubstatementIndexingExcept import org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration; import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.EffectiveStmtUtils; import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractSchemaTreeStatementSupport; +import org.opendaylight.yangtools.yang.parser.spi.meta.BoundStmtCtx; import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStatementState; import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx; import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current; @@ -113,8 +114,11 @@ public final class ListStatementSupport .addOptional(YangStmtMapping.WHEN) .build(); + private final boolean warnForUnkeyedLists; + ListStatementSupport(final YangParserConfiguration config, final SubstatementValidator validator) { super(YangStmtMapping.LIST, instantiatedPolicy(), config, validator); + this.warnForUnkeyedLists = config.warnForUnkeyedLists(); } public static @NonNull ListStatementSupport rfc6020Instance(final YangParserConfiguration config) { @@ -126,8 +130,8 @@ public final class ListStatementSupport } @Override - protected ListStatement createDeclared(final StmtContext ctx, - final ImmutableList> substatements) { + protected ListStatement createDeclared(final BoundStmtCtx ctx, + final ImmutableList> substatements) { return DeclaredStatements.createList(ctx.getArgument(), substatements); } @@ -170,7 +174,8 @@ public final class ListStatementSupport } final int flags = computeFlags(stmt, substatements); - if (stmt.effectiveConfig() == EffectiveConfig.TRUE && keyDefinition.isEmpty() && isInstantied(stmt)) { + if (warnForUnkeyedLists && stmt.effectiveConfig() == EffectiveConfig.TRUE + && keyDefinition.isEmpty() && isInstantied(stmt)) { warnConfigList(stmt); }