X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-parser-rfc7950%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Frfc7950%2Fstmt%2Fmeta%2FYinElementStatementSupport.java;h=91cc52ec70ff1dcdc3bb12085f86bbf43f0266e9;hb=2d8edd5622078f454592ef120e627f59a5d05c42;hp=ad3d73c242d001dec02323adafe98b5b0d1db41d;hpb=2fd442dd96c2dfd7a6a5c722e19f62654ef1c7d1;p=yangtools.git diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/meta/YinElementStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/meta/YinElementStatementSupport.java index ad3d73c242..91cc52ec70 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/meta/YinElementStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/meta/YinElementStatementSupport.java @@ -9,31 +9,28 @@ package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.meta; import com.google.common.collect.ImmutableList; import org.opendaylight.yangtools.yang.model.api.YangStmtMapping; +import org.opendaylight.yangtools.yang.model.api.meta.DeclarationReference; import org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement; import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.YinElementEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.YinElementStatement; +import org.opendaylight.yangtools.yang.model.parser.api.YangParserConfiguration; +import org.opendaylight.yangtools.yang.model.ri.stmt.DeclaredStatementDecorators; import org.opendaylight.yangtools.yang.model.ri.stmt.DeclaredStatements; import org.opendaylight.yangtools.yang.model.ri.stmt.EffectiveStatements; import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractBooleanStatementSupport; -import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator; public final class YinElementStatementSupport extends AbstractBooleanStatementSupport { private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder( YangStmtMapping.YIN_ELEMENT).build(); - private static final YinElementStatementSupport INSTANCE = new YinElementStatementSupport(); - private YinElementStatementSupport() { + public YinElementStatementSupport(final YangParserConfiguration config) { super(YangStmtMapping.YIN_ELEMENT, EffectiveStatements.createYinElement(DeclaredStatements.createYinElement(false)), EffectiveStatements.createYinElement(DeclaredStatements.createYinElement(true)), - StatementPolicy.reject()); - } - - public static YinElementStatementSupport getInstance() { - return INSTANCE; + StatementPolicy.reject(), config); } @Override @@ -42,9 +39,15 @@ public final class YinElementStatementSupport } @Override - protected YinElementStatement createDeclared(final StmtContext ctx, + protected YinElementStatement createDeclared(final Boolean argument, final ImmutableList> substatements) { - return DeclaredStatements.createYinElement(ctx.getArgument(), substatements); + return DeclaredStatements.createYinElement(argument, substatements); + } + + @Override + protected YinElementStatement attachDeclarationReference(final YinElementStatement stmt, + final DeclarationReference reference) { + return DeclaredStatementDecorators.decorateYinElement(stmt, reference); } @Override