Use AbstractUnqualifiedStatementSupport 73/101073/2
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 11 May 2022 12:26:16 +0000 (14:26 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Wed, 11 May 2022 12:49:28 +0000 (14:49 +0200)
We have a centralized way of parsing arguments here, use that instead of
rolling our own for both modules and submodules.

JIRA: YANGTOOLS-837
Change-Id: I9e4eab0b708dd39111fbeac9015eff2fbcd6784f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/ModuleStatementSupport.java
parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/submodule/SubmoduleStatementSupport.java

index eecd41af6409c4c33ba8130dd2ce7eb66a697bfa..ef45830188e0b56e16b3d4352a8f840d397b2e32 100644 (file)
@@ -42,7 +42,7 @@ import org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration;
 import org.opendaylight.yangtools.yang.parser.spi.ModuleNamespace;
 import org.opendaylight.yangtools.yang.parser.spi.NamespaceToModule;
 import org.opendaylight.yangtools.yang.parser.spi.PreLinkageModuleNamespace;
-import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
+import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractUnqualifiedStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.BoundStmtCtx;
 import org.opendaylight.yangtools.yang.parser.spi.meta.CommonStmtCtx;
 import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
@@ -64,7 +64,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
 @Beta
 public final class ModuleStatementSupport
-        extends AbstractStatementSupport<Unqualified, ModuleStatement, ModuleEffectiveStatement> {
+        extends AbstractUnqualifiedStatementSupport<ModuleStatement, ModuleEffectiveStatement> {
     private static final SubstatementValidator RFC6020_VALIDATOR = SubstatementValidator.builder(YangStmtMapping.MODULE)
         .addAny(YangStmtMapping.ANYXML)
         .addAny(YangStmtMapping.AUGMENT)
@@ -135,15 +135,6 @@ public final class ModuleStatementSupport
         return new ModuleStatementSupport(config, RFC7950_VALIDATOR);
     }
 
-    @Override
-    public Unqualified parseArgumentValue(final StmtContext<?, ?, ?> ctx, final String value) {
-        try {
-            return Unqualified.of(value);
-        } catch (IllegalArgumentException e) {
-            throw new SourceException(e.getMessage(), ctx, e);
-        }
-    }
-
     @Override
     public void onPreLinkageDeclared(final Mutable<Unqualified, ModuleStatement, ModuleEffectiveStatement> stmt) {
         final Unqualified moduleName = stmt.getArgument();
index ab6e728cca37c5a86ea8298bd2121e4114d73d69..d0c19bc08a488e2244d36c6297471cac45255d83 100644 (file)
@@ -28,7 +28,7 @@ import org.opendaylight.yangtools.yang.model.ri.stmt.DeclaredStatements;
 import org.opendaylight.yangtools.yang.model.spi.meta.SubstatementIndexingException;
 import org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration;
 import org.opendaylight.yangtools.yang.parser.spi.SubmoduleNamespace;
-import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
+import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractUnqualifiedStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.BoundStmtCtx;
 import org.opendaylight.yangtools.yang.parser.spi.meta.CommonStmtCtx;
 import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
@@ -41,7 +41,7 @@ import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
 @Beta
 public final class SubmoduleStatementSupport
-        extends AbstractStatementSupport<Unqualified, SubmoduleStatement, SubmoduleEffectiveStatement> {
+        extends AbstractUnqualifiedStatementSupport<SubmoduleStatement, SubmoduleEffectiveStatement> {
     private static final SubstatementValidator RFC6020_VALIDATOR =
         SubstatementValidator.builder(YangStmtMapping.SUBMODULE)
             .addAny(YangStmtMapping.ANYXML)
@@ -112,15 +112,6 @@ public final class SubmoduleStatementSupport
         return new SubmoduleStatementSupport(config, RFC7950_VALIDATOR);
     }
 
-    @Override
-    public Unqualified parseArgumentValue(final StmtContext<?, ?, ?> ctx, final String value) {
-        try {
-            return Unqualified.of(value);
-        } catch (IllegalArgumentException e) {
-            throw new SourceException(e.getMessage(), ctx, e);
-        }
-    }
-
     @Override
     public void onPreLinkageDeclared(final Mutable<Unqualified, SubmoduleStatement, SubmoduleEffectiveStatement> stmt) {
         stmt.setRootIdentifier(new SourceIdentifier(stmt.getArgument(),