X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-data-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fdata%2Fimpl%2Fschema%2Fbuilder%2Fimpl%2FImmutableContainerNodeSchemaAwareBuilder.java;h=4bca57edd594133ed990720ff5cfbe509fd3da03;hb=9d74a74a9d46ff8c6878bc7d76994782d938cddc;hp=ca8a6a2f61cf6931e7d956b13a5d4dfdda0a5415;hpb=ba1b7f529bb6d4c451500230504692478150454d;p=yangtools.git diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableContainerNodeSchemaAwareBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableContainerNodeSchemaAwareBuilder.java index ca8a6a2f61..4bca57edd5 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableContainerNodeSchemaAwareBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableContainerNodeSchemaAwareBuilder.java @@ -7,34 +7,35 @@ */ package org.opendaylight.yangtools.yang.data.impl.schema.builder.impl; -import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier; +import org.eclipse.jdt.annotation.NonNull; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild; -import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContainerNodeAttrBuilder; +import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContainerNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.valid.DataNodeContainerValidator; -import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; +import org.opendaylight.yangtools.yang.model.api.ContainerLike; +@Deprecated(since = "6.0.7", forRemoval = true) public final class ImmutableContainerNodeSchemaAwareBuilder extends ImmutableContainerNodeBuilder { - private final DataNodeContainerValidator validator; - // TODO remove schema aware builders, replace by validator called at build() ? - private ImmutableContainerNodeSchemaAwareBuilder(final ContainerSchemaNode schema) { + private ImmutableContainerNodeSchemaAwareBuilder(final ContainerLike schema) { this.validator = new DataNodeContainerValidator(schema); - super.withNodeIdentifier(new InstanceIdentifier.NodeIdentifier(schema.getQName())); + super.withNodeIdentifier(NodeIdentifier.create(schema.getQName())); } - private ImmutableContainerNodeSchemaAwareBuilder(final ContainerSchemaNode schema, final ImmutableContainerNode node) { + private ImmutableContainerNodeSchemaAwareBuilder(final ContainerLike schema, final ImmutableContainerNode node) { super(node); this.validator = new DataNodeContainerValidator(schema); - super.withNodeIdentifier(new InstanceIdentifier.NodeIdentifier(schema.getQName())); + super.withNodeIdentifier(NodeIdentifier.create(schema.getQName())); } - public static DataContainerNodeAttrBuilder create(final ContainerSchemaNode schema) { + public static @NonNull DataContainerNodeBuilder create(final ContainerLike schema) { return new ImmutableContainerNodeSchemaAwareBuilder(schema); } - public static DataContainerNodeAttrBuilder create(final ContainerSchemaNode schema, final ContainerNode node) { + public static @NonNull DataContainerNodeBuilder create(final ContainerLike schema, + final ContainerNode node) { if (!(node instanceof ImmutableContainerNode)) { throw new UnsupportedOperationException(String.format("Cannot initialize from class %s", node.getClass())); } @@ -42,12 +43,13 @@ public final class ImmutableContainerNodeSchemaAwareBuilder extends ImmutableCon } @Override - public DataContainerNodeAttrBuilder withNodeIdentifier(final InstanceIdentifier.NodeIdentifier nodeIdentifier) { + public DataContainerNodeBuilder withNodeIdentifier( + final NodeIdentifier withNodeIdentifier) { throw new UnsupportedOperationException("Node identifier created from schema"); } @Override - public DataContainerNodeAttrBuilder withChild(final DataContainerChild child) { + public DataContainerNodeBuilder withChild(final DataContainerChild child) { validator.validateChild(child.getIdentifier()); return super.withChild(child); }