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%2Fnodes%2FAbstractImmutableDataContainerNode.java;h=ea6e954da79685bb471d5bde4ae39750d08ffe1f;hb=24d06767f3a0ead8152a745fb05eda1d4a37ba77;hp=a4b426885827003dfb9f3fdbb79db6b9b9c54013;hpb=5ccd4eca452baa71b630a929f6dceafaad90280e;p=yangtools.git diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/nodes/AbstractImmutableDataContainerNode.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/nodes/AbstractImmutableDataContainerNode.java index a4b4268858..ea6e954da7 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/nodes/AbstractImmutableDataContainerNode.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/nodes/AbstractImmutableDataContainerNode.java @@ -8,20 +8,24 @@ package org.opendaylight.yangtools.yang.data.impl.schema.nodes; import com.google.common.base.Optional; +import java.util.Collection; import java.util.Map; import org.opendaylight.yangtools.concepts.Immutable; +import org.opendaylight.yangtools.util.ImmutableOffsetMap; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode; -public abstract class AbstractImmutableDataContainerNode extends AbstractImmutableNormalizedNode>> implements Immutable, DataContainerNode { +public abstract class AbstractImmutableDataContainerNode + extends AbstractImmutableNormalizedNode>> + implements Immutable, DataContainerNode { private final Map> children; public AbstractImmutableDataContainerNode( final Map> children, final K nodeIdentifier) { super(nodeIdentifier); - this.children = UnmodifiableChildrenMap.create(children); + this.children = ImmutableOffsetMap.unorderedCopyOf(children); } @Override @@ -30,7 +34,7 @@ public abstract class AbstractImmutableDataContainerNode } @Override - public final Iterable> getValue() { + public final Collection> getValue() { return children.values(); } @@ -39,6 +43,15 @@ public abstract class AbstractImmutableDataContainerNode return children.hashCode(); } + /** + * DO NOT USE THIS METHOD. + * + * This is an implementation-internal API and no outside users should use it. If you do, + * you are asking for trouble, as the returned object is not guaranteed to conform to + * java.util.Map interface. + * + * @return An unmodifiable view if this node's children. + */ public final Map> getChildren() { return children; }