import com.google.common.collect.ImmutableList;
import org.opendaylight.yangtools.yang.common.Uint32;
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.PositionEffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.stmt.PositionStatement;
+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.api.YangParserConfiguration;
import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractInternedStatementSupport;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
import org.opendaylight.yangtools.yang.parser.spi.meta.SubstatementValidator;
public final class PositionStatementSupport
extends AbstractInternedStatementSupport<Uint32, PositionStatement, PositionEffectiveStatement> {
- private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
- YangStmtMapping.POSITION).build();
- private static final PositionStatementSupport INSTANCE = new PositionStatementSupport();
+ private static final SubstatementValidator SUBSTATEMENT_VALIDATOR =
+ SubstatementValidator.builder(YangStmtMapping.POSITION).build();
- private PositionStatementSupport() {
- super(YangStmtMapping.POSITION, StatementPolicy.contextIndependent());
- }
-
- public static PositionStatementSupport getInstance() {
- return INSTANCE;
+ public PositionStatementSupport(final YangParserConfiguration config) {
+ super(YangStmtMapping.POSITION, StatementPolicy.contextIndependent(), config, SUBSTATEMENT_VALIDATOR);
}
@Override
}
}
- @Override
- protected SubstatementValidator getSubstatementValidator() {
- return SUBSTATEMENT_VALIDATOR;
- }
-
@Override
protected PositionStatement createDeclared(final Uint32 argument,
final ImmutableList<? extends DeclaredStatement<?>> substatements) {
return DeclaredStatements.createPosition(argument, ImmutableList.of());
}
+ @Override
+ protected PositionStatement attachDeclarationReference(final PositionStatement stmt,
+ final DeclarationReference reference) {
+ return DeclaredStatementDecorators.decoratePosition(stmt, reference);
+ }
+
@Override
protected PositionEffectiveStatement createEffective(final PositionStatement declared,
final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {
protected PositionEffectiveStatement createEmptyEffective(final PositionStatement declared) {
return EffectiveStatements.createPosition(declared);
}
-}
\ No newline at end of file
+}