Teach YANG parser to retain DeclarationReference
[yangtools.git] / yang / rfc6536-parser-support / src / main / java / org / opendaylight / yangtools / rfc6536 / parser / DefaultDenyAllStatementSupport.java
index 91eb86a9280918558fb44fa8bf0809ba7ae5ab40..8e5f07be106896332479b0231942d7fd7c53cddc 100644 (file)
@@ -20,7 +20,7 @@ import org.opendaylight.yangtools.yang.model.api.SchemaNodeDefaults;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 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.meta.StatementDefinition;
+import org.opendaylight.yangtools.yang.model.parser.api.YangParserConfiguration;
 import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredStatement.WithoutArgument.WithSubstatements;
 import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.UnknownEffectiveStatementBase;
 import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractEmptyStatementSupport;
@@ -67,23 +67,16 @@ public final class DefaultDenyAllStatementSupport
         }
     }
 
-    private static final DefaultDenyAllStatementSupport INSTANCE =
-            new DefaultDenyAllStatementSupport(NACMStatements.DEFAULT_DENY_ALL);
+    private static final SubstatementValidator VALIDATOR =
+        SubstatementValidator.builder(NACMStatements.DEFAULT_DENY_ALL).build();
 
-    private final SubstatementValidator validator;
-
-    private DefaultDenyAllStatementSupport(final StatementDefinition definition) {
-        super(definition, StatementPolicy.contextIndependent());
-        this.validator = SubstatementValidator.builder(definition).build();
-    }
-
-    public static DefaultDenyAllStatementSupport getInstance() {
-        return INSTANCE;
+    public DefaultDenyAllStatementSupport(final YangParserConfiguration config) {
+        super(NACMStatements.DEFAULT_DENY_ALL, StatementPolicy.contextIndependent(), config);
     }
 
     @Override
     protected SubstatementValidator getSubstatementValidator() {
-        return validator;
+        return VALIDATOR;
     }
 
     @Override