import org.eclipse.jdt.annotation.NonNull;
import org.opendaylight.yangtools.yang.common.Ordering;
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.OrderedByEffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.stmt.OrderedByStatement;
+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.AbstractStatementSupport;
import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
extends AbstractStatementSupport<Ordering, OrderedByStatement, OrderedByEffectiveStatement> {
private static final SubstatementValidator SUBSTATEMENT_VALIDATOR =
SubstatementValidator.builder(YangStmtMapping.ORDERED_BY).build();
- private static final OrderedByStatementSupport INSTANCE = new OrderedByStatementSupport();
/*
* Ordered-by has low argument cardinality, hence we can reuse them in case declaration does not have any
private static final @NonNull OrderedByEffectiveStatement EMPTY_USER_EFF =
EffectiveStatements.createOrderedBy(EMPTY_USER_DECL);
- private OrderedByStatementSupport() {
- super(YangStmtMapping.ORDERED_BY, StatementPolicy.contextIndependent());
- }
-
- public static OrderedByStatementSupport getInstance() {
- return INSTANCE;
+ public OrderedByStatementSupport(final YangParserConfiguration config) {
+ super(YangStmtMapping.ORDERED_BY, StatementPolicy.contextIndependent(), config, SUBSTATEMENT_VALIDATOR);
}
@Override
}
}
- @Override
- protected SubstatementValidator getSubstatementValidator() {
- return SUBSTATEMENT_VALIDATOR;
- }
-
@Override
protected OrderedByStatement createDeclared(final StmtContext<Ordering, OrderedByStatement, ?> ctx,
final ImmutableList<? extends DeclaredStatement<?>> substatements) {
}
}
+ @Override
+ protected OrderedByStatement attachDeclarationReference(final OrderedByStatement stmt,
+ final DeclarationReference reference) {
+ return DeclaredStatementDecorators.decorateOrderedBy(stmt, reference);
+ }
+
@Override
protected OrderedByEffectiveStatement createEffective(final Current<Ordering, OrderedByStatement> stmt,
final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {