X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-parser-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Fstmt%2Frfc6020%2FLengthStatementImpl.java;h=e720584901a745996fc0255b4db1d216dca78731;hb=0c39d30a237a61b7a7eb0fecb066004ff561e1a9;hp=24b8d6c02c5158b2f587238f5386615be905be7c;hpb=42a5ab126bea6cdbc1eb3693044a024ed468ac4e;p=yangtools.git diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/LengthStatementImpl.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/LengthStatementImpl.java index 24b8d6c02c..e720584901 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/LengthStatementImpl.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/LengthStatementImpl.java @@ -8,7 +8,8 @@ package org.opendaylight.yangtools.yang.parser.stmt.rfc6020; import java.util.List; -import org.opendaylight.yangtools.yang.model.api.Rfc6020Mapping; +import javax.annotation.Nonnull; +import org.opendaylight.yangtools.yang.model.api.YangStmtMapping; import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.DescriptionStatement; import org.opendaylight.yangtools.yang.model.api.stmt.ErrorAppTagStatement; @@ -16,55 +17,52 @@ import org.opendaylight.yangtools.yang.model.api.stmt.ErrorMessageStatement; import org.opendaylight.yangtools.yang.model.api.stmt.LengthStatement; import org.opendaylight.yangtools.yang.model.api.stmt.ReferenceStatement; import org.opendaylight.yangtools.yang.model.api.type.LengthConstraint; -import org.opendaylight.yangtools.yang.parser.spi.SubstatementValidator; import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractDeclaredStatement; import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport; import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; -import org.opendaylight.yangtools.yang.parser.spi.source.SourceException; +import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator; import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.type.LengthEffectiveStatementImpl; public class LengthStatementImpl extends AbstractDeclaredStatement> implements LengthStatement { - private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(Rfc6020Mapping + private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(YangStmtMapping .LENGTH) - .add(Rfc6020Mapping.DESCRIPTION, 0, 1) - .add(Rfc6020Mapping.ERROR_APP_TAG, 0, 1) - .add(Rfc6020Mapping.ERROR_MESSAGE, 0, 1) - .add(Rfc6020Mapping.REFERENCE, 0, 1) + .addOptional(YangStmtMapping.DESCRIPTION) + .addOptional(YangStmtMapping.ERROR_APP_TAG) + .addOptional(YangStmtMapping.ERROR_MESSAGE) + .addOptional(YangStmtMapping.REFERENCE) .build(); - protected LengthStatementImpl(StmtContext, LengthStatement, ?> context) { + protected LengthStatementImpl(final StmtContext, LengthStatement, ?> context) { super(context); } - public static class Definition - extends - AbstractStatementSupport, LengthStatement, EffectiveStatement, LengthStatement>> { + public static class Definition extends AbstractStatementSupport, LengthStatement, + EffectiveStatement, LengthStatement>> { public Definition() { - super(Rfc6020Mapping.LENGTH); + super(YangStmtMapping.LENGTH); } @Override - public List parseArgumentValue(StmtContext ctx, String value) { - return TypeUtils.parseLengthListFromString(value); + public List parseArgumentValue(final StmtContext ctx, final String value) { + return TypeUtils.parseLengthListFromString(ctx, value); } @Override - public LengthStatement createDeclared(StmtContext, LengthStatement, ?> ctx) { + public LengthStatement createDeclared(final StmtContext, LengthStatement, ?> ctx) { return new LengthStatementImpl(ctx); } @Override public EffectiveStatement, LengthStatement> createEffective( - StmtContext, LengthStatement, EffectiveStatement, LengthStatement>> ctx) { + final StmtContext, LengthStatement, EffectiveStatement, + LengthStatement>> ctx) { return new LengthEffectiveStatementImpl(ctx); } @Override - public void onFullDefinitionDeclared(StmtContext.Mutable, - LengthStatement, EffectiveStatement, LengthStatement>> stmt) throws SourceException { - super.onFullDefinitionDeclared(stmt); - SUBSTATEMENT_VALIDATOR.validate(stmt); + protected SubstatementValidator getSubstatementValidator() { + return SUBSTATEMENT_VALIDATOR; } } @@ -88,8 +86,9 @@ public class LengthStatementImpl extends AbstractDeclaredStatement getValue() { return argument(); } -} \ No newline at end of file +}