Retain DeclarationReference in DeclaredStatements
[yangtools.git] / yang / yang-parser-rfc7950 / src / main / java / org / opendaylight / yangtools / yang / parser / rfc7950 / stmt / meta / ErrorAppTagStatementSupport.java
index 64905e084ace823a164c62cecc2d84ecedc1bfc5..d3402da2f3dd7820833da9ec64ce208d55b73ec5 100644 (file)
@@ -9,10 +9,13 @@ 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.ErrorAppTagEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.ErrorAppTagStatement;
+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.AbstractStringStatementSupport;
@@ -24,14 +27,9 @@ public final class ErrorAppTagStatementSupport
         extends AbstractStringStatementSupport<ErrorAppTagStatement, ErrorAppTagEffectiveStatement> {
     private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
         YangStmtMapping.ERROR_APP_TAG).build();
-    private static final ErrorAppTagStatementSupport INSTANCE = new ErrorAppTagStatementSupport();
 
-    private ErrorAppTagStatementSupport() {
-        super(YangStmtMapping.ERROR_APP_TAG, StatementPolicy.contextIndependent());
-    }
-
-    public static ErrorAppTagStatementSupport getInstance() {
-        return INSTANCE;
+    public ErrorAppTagStatementSupport(final YangParserConfiguration config) {
+        super(YangStmtMapping.ERROR_APP_TAG, StatementPolicy.contextIndependent(), config);
     }
 
     @Override
@@ -46,8 +44,9 @@ public final class ErrorAppTagStatementSupport
     }
 
     @Override
-    protected ErrorAppTagStatement createEmptyDeclared(final StmtContext<String, ErrorAppTagStatement, ?> ctx) {
-        return DeclaredStatements.createErrorAppTag(ctx.getRawArgument());
+    protected ErrorAppTagStatement attachDeclarationReference(final ErrorAppTagStatement stmt,
+            final DeclarationReference reference) {
+        return DeclaredStatementDecorators.decorateErrorAppTag(stmt, reference);
     }
 
     @Override