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%2Ftree%2FUnorderedLeafSetModificationStrategy.java;h=e52325ea79a7936b74f06f79ef78cab587609017;hb=bf405586fc69c3781311cfb8ac19ba93b670ec8d;hp=44c63a3bc18a673f84b6720567617047ead51c10;hpb=b43526eb049be04e1a520da398784a44c7f40683;p=yangtools.git diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UnorderedLeafSetModificationStrategy.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UnorderedLeafSetModificationStrategy.java index 44c63a3bc1..e52325ea79 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UnorderedLeafSetModificationStrategy.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UnorderedLeafSetModificationStrategy.java @@ -8,20 +8,22 @@ package org.opendaylight.yangtools.yang.data.impl.schema.tree; import static com.google.common.base.Preconditions.checkArgument; + import com.google.common.base.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.LeafSetNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeContainerBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetNodeBuilder; import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode; -final class UnorderedLeafSetModificationStrategy extends NormalizedNodeContainerModificationStrategy { +final class UnorderedLeafSetModificationStrategy extends AbstractNodeContainerModificationStrategy { private final Optional entryStrategy; @SuppressWarnings({ "unchecked", "rawtypes" }) - UnorderedLeafSetModificationStrategy(final LeafListSchemaNode schema) { - super((Class) LeafSetNode.class); + UnorderedLeafSetModificationStrategy(final LeafListSchemaNode schema, final TreeType treeType) { + super((Class) LeafSetNode.class, treeType); entryStrategy = Optional. of(new LeafSetEntryModificationStrategy(schema)); } @@ -32,6 +34,13 @@ final class UnorderedLeafSetModificationStrategy extends NormalizedNodeContainer return ImmutableLeafSetNodeBuilder.create((LeafSetNode) original); } + @Override + protected NormalizedNode createEmptyValue(NormalizedNode original) { + checkArgument(original instanceof LeafSetNode); + return ImmutableLeafSetNodeBuilder.create().withNodeIdentifier(((LeafSetNode) original).getIdentifier()) + .build(); + } + @Override public Optional getChild(final YangInstanceIdentifier.PathArgument identifier) { if (identifier instanceof YangInstanceIdentifier.NodeWithValue) {