import static java.util.Objects.requireNonNull;
import com.google.common.collect.ImmutableList;
-import java.util.Optional;
import org.eclipse.jdt.annotation.NonNull;
-import org.eclipse.jdt.annotation.Nullable;
+import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.common.QNameModule;
import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
+import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
import org.opendaylight.yangtools.yang.model.api.QNameModuleAware;
import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.stmt.AugmentEffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.stmt.AugmentStatement;
import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
+import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredEffectiveStatement.DefaultWithSchemaTree;
import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.ActionNodeContainerMixin;
+import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.DataNodeContainerMixin;
import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.DocumentedNodeMixin;
import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.NotificationNodeContainerMixin;
import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.WhenConditionMixin;
public final class AugmentEffectiveStatementImpl
- extends AbstractDataNodeContainer<SchemaNodeIdentifier, AugmentStatement>
+ extends DefaultWithSchemaTree<SchemaNodeIdentifier, AugmentStatement>
implements AugmentEffectiveStatement, AugmentationSchemaNode, QNameModuleAware,
DocumentedNodeMixin.WithStatus<SchemaNodeIdentifier, AugmentStatement>,
+ DataNodeContainerMixin<SchemaNodeIdentifier, AugmentStatement>,
ActionNodeContainerMixin<SchemaNodeIdentifier, AugmentStatement>,
NotificationNodeContainerMixin<SchemaNodeIdentifier, AugmentStatement>,
WhenConditionMixin<SchemaNodeIdentifier, AugmentStatement> {
- private final @Nullable AugmentationSchemaNode original;
private final @NonNull SchemaNodeIdentifier argument;
private final @NonNull QNameModule rootModuleQName;
private final int flags;
public AugmentEffectiveStatementImpl(final AugmentStatement declared, final SchemaNodeIdentifier argument,
final int flags, final QNameModule rootModuleQName,
- final ImmutableList<? extends EffectiveStatement<?, ?>> substatements,
- final @Nullable AugmentationSchemaNode original) {
+ final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {
super(declared, substatements);
this.argument = requireNonNull(argument);
this.rootModuleQName = requireNonNull(rootModuleQName);
this.flags = flags;
- this.original = original;
}
@Override
}
@Override
- @Deprecated(since = "7.0.9", forRemoval = true)
- public Optional<AugmentationSchemaNode> getOriginalDefinition() {
- return Optional.ofNullable(original);
+ public int flags() {
+ return flags;
}
@Override
- public int flags() {
- return flags;
+ public DataSchemaNode dataChildByName(final QName name) {
+ return dataSchemaNode(name);
}
@Override