import org.opendaylight.yangtools.rfc6643.model.api.MaxAccess;
import org.opendaylight.yangtools.rfc6643.model.api.MaxAccessEffectiveStatement;
import org.opendaylight.yangtools.rfc6643.model.api.MaxAccessStatement;
+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.parser.rfc7950.stmt.BaseStatementSupport;
+import org.opendaylight.yangtools.yang.parser.api.YangParserConfiguration;
+import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
@Beta
public final class MaxAccessStatementSupport
- extends BaseStatementSupport<MaxAccess, MaxAccessStatement, MaxAccessEffectiveStatement> {
- private static final SubstatementValidator SUBSTATEMENT_VALIDATOR =
+ extends AbstractStatementSupport<MaxAccess, MaxAccessStatement, MaxAccessEffectiveStatement> {
+ private static final SubstatementValidator VALIDATOR =
SubstatementValidator.builder(IetfYangSmiv2ExtensionsMapping.MAX_ACCESS).build();
- private static final MaxAccessStatementSupport INSTANCE = new MaxAccessStatementSupport();
- private MaxAccessStatementSupport() {
- super(IetfYangSmiv2ExtensionsMapping.MAX_ACCESS, CopyPolicy.CONTEXT_INDEPENDENT);
- }
-
- public static MaxAccessStatementSupport getInstance() {
- return INSTANCE;
+ public MaxAccessStatementSupport(final YangParserConfiguration config) {
+ super(IetfYangSmiv2ExtensionsMapping.MAX_ACCESS, StatementPolicy.contextIndependent(), config, VALIDATOR);
}
@Override
return val == null ? rawArgument : val.stringLiteral();
}
- @Override
- protected SubstatementValidator getSubstatementValidator() {
- return SUBSTATEMENT_VALIDATOR;
- }
-
@Override
protected MaxAccessStatement createDeclared(final StmtContext<MaxAccess, MaxAccessStatement, ?> ctx,
final ImmutableList<? extends DeclaredStatement<?>> substatements) {
}
@Override
- protected MaxAccessStatement createEmptyDeclared(final StmtContext<MaxAccess, MaxAccessStatement, ?> ctx) {
- return createDeclared(ctx, ImmutableList.of());
+ protected MaxAccessStatement attachDeclarationReference(final MaxAccessStatement stmt,
+ final DeclarationReference reference) {
+ return new RefMaxAccessStatement(stmt, reference);
}
@Override