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%2FSubmoduleStatementImpl.java;h=5516f9debce27c0a5b574611ea1ea7730e6faa91;hb=04fa25a4fe8957f6492618aa9a1e9a4f9af39df4;hp=41c0a5343d448faf0b6ab2a50a6e43b1c3d05494;hpb=bf405586fc69c3781311cfb8ac19ba93b670ec8d;p=yangtools.git diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/SubmoduleStatementImpl.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/SubmoduleStatementImpl.java index 41c0a5343d..5516f9debc 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/SubmoduleStatementImpl.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/SubmoduleStatementImpl.java @@ -10,7 +10,6 @@ package org.opendaylight.yangtools.yang.parser.stmt.rfc6020; import static org.opendaylight.yangtools.yang.parser.spi.SubstatementValidator.MAX; import static org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils.findFirstDeclaredSubstatement; import static org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils.firstAttributeOf; - import com.google.common.base.Optional; import java.net.URI; import java.util.Date; @@ -61,8 +60,9 @@ public class SubmoduleStatementImpl extends AbstractRootStatement DEFAULT_REVISION = Optional.of(SimpleDateFormatUtil.DEFAULT_DATE_REV); - protected SubmoduleStatementImpl(StmtContext context) { + protected SubmoduleStatementImpl(final StmtContext context) { super(context); } @@ -74,35 +74,32 @@ public class SubmoduleStatementImpl extends AbstractRootStatement ctx, String value) { + public String parseArgumentValue(final StmtContext ctx, final String value) { return value; } @Override public SubmoduleStatement createDeclared( - StmtContext ctx) { + final StmtContext ctx) { return new SubmoduleStatementImpl(ctx); } @Override public EffectiveStatement createEffective( - StmtContext> ctx) { + final StmtContext> ctx) { return new SubmoduleEffectiveStatementImpl(ctx); } @Override public void onLinkageDeclared( - Mutable> stmt) + final Mutable> stmt) throws SourceException { - Optional revisionDate = Optional.fromNullable(Utils.getLatestRevision(stmt.declaredSubstatements())); - if (!revisionDate.isPresent()) { - revisionDate = Optional.of(SimpleDateFormatUtil.DEFAULT_DATE_REV); - } + final Optional revisionDate = Optional.fromNullable( + Utils.getLatestRevision(stmt.declaredSubstatements())).or(DEFAULT_REVISION); - ModuleIdentifier submoduleIdentifier = new ModuleIdentifierImpl( - stmt.getStatementArgument(), Optional. absent(), - revisionDate); + ModuleIdentifier submoduleIdentifier = new ModuleIdentifierImpl(stmt.getStatementArgument(), + Optional. absent(), revisionDate); stmt.addContext(SubmoduleNamespace.class, submoduleIdentifier, stmt); @@ -110,20 +107,16 @@ public class SubmoduleStatementImpl extends AbstractRootStatement prefixSubStmtCtx = findFirstDeclaredSubstatement( stmt, 0, BelongsToStatement.class, PrefixStatement.class); - - if (prefixSubStmtCtx == null) { - throw new SourceException(String.format("Prefix of belongsTo statement is missing in submodule [%s]", - stmt.getStatementArgument()), stmt.getStatementSourceReference()); - } + SourceException.throwIfNull(prefixSubStmtCtx, stmt.getStatementSourceReference(), + "Prefix of belongsTo statement is missing in submodule [%s]", stmt.getStatementArgument()); String prefix = (String) prefixSubStmtCtx.getStatementArgument(); - stmt.addToNs(BelongsToPrefixToModuleName.class, prefix, - belongsToModuleName); + stmt.addToNs(BelongsToPrefixToModuleName.class, prefix, belongsToModuleName); } @Override - public void onFullDefinitionDeclared(Mutable> stmt) throws SourceException { super.onFullDefinitionDeclared(stmt); SUBSTATEMENT_VALIDATOR.validate(stmt);