From bf1e0775a3750272140473054286e1d722cbb785 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Sat, 28 Feb 2015 10:01:11 +0100 Subject: [PATCH] Make sure NormalizedNodeContainer uses Collection Instead of an Iterable, specify a collection, as that makes the number of elements known. Change-Id: Ifa6260ebe157c9afde49bbb58043d6ec2fecd189 Signed-off-by: Robert Varga --- .../data/api/schema/AugmentationNode.java | 17 ++++++++-------- .../yang/data/api/schema/ChoiceNode.java | 3 ++- .../yang/data/api/schema/ContainerNode.java | 9 +++++---- .../data/api/schema/DataContainerNode.java | 3 ++- .../yang/data/api/schema/LeafSetNode.java | 3 ++- .../yang/data/api/schema/MapNode.java | 3 ++- .../api/schema/NormalizedNodeContainer.java | 20 +++++++++---------- .../data/api/schema/OrderedNodeContainer.java | 3 ++- .../yang/data/api/schema/UnkeyedListNode.java | 3 ++- .../impl/ImmutableLeafSetNodeBuilder.java | 6 +++--- .../builder/impl/ImmutableMapNodeBuilder.java | 8 ++++---- .../ImmutableOrderedLeafSetNodeBuilder.java | 13 ++++++------ .../impl/ImmutableOrderedMapNodeBuilder.java | 7 ++++--- .../impl/ImmutableUnkeyedListNodeBuilder.java | 8 ++++---- .../AbstractImmutableDataContainerNode.java | 5 +++-- .../serializer/ListNodeBaseSerializer.java | 5 +++-- 16 files changed, 64 insertions(+), 52 deletions(-) diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/AugmentationNode.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/AugmentationNode.java index 71fa5c705a..2086542bf8 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/AugmentationNode.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/AugmentationNode.java @@ -7,6 +7,7 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; @@ -16,7 +17,7 @@ import org.opendaylight.yangtools.yang.model.api.AugmentationSchema; /** * * Data instance of augment assiociated with parent node. - * + * * Augmentation is addition of subtree defined by other external YANG Model and * is schema for subtree is described by instance of {@link AugmentationSchema} * associated with parent node of this node. @@ -27,22 +28,22 @@ import org.opendaylight.yangtools.yang.model.api.AugmentationSchema; public interface AugmentationNode extends // MixinNode, // DataContainerNode, - DataContainerChild>> { + DataContainerChild>> { /** * Gets identifier of augmentation node - * - * Returned identifier of augmentation node contains all possible + * + * Returned identifier of augmentation node contains all possible * direct child QNames. - * + * * This is sufficient to identify instance of augmentation, * since RFC6020 states that augment that augment - * statement must not add multiple nodes from same namespace + * statement must not add multiple nodes from same namespace * / module * to the target node. - * + * * @return Identifier which uniquelly identifies augmentation in particular subtree. - * + * */ @Override public AugmentationIdentifier getIdentifier(); diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/ChoiceNode.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/ChoiceNode.java index dd18d47f9d..bba23440f0 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/ChoiceNode.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/ChoiceNode.java @@ -7,6 +7,7 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; @@ -25,6 +26,6 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum public interface ChoiceNode extends // MixinNode, // DataContainerNode, - DataContainerChild>> { + DataContainerChild>> { } diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/ContainerNode.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/ContainerNode.java index 7872466b35..ee42baadb4 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/ContainerNode.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/ContainerNode.java @@ -7,21 +7,22 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.AttributesContainer; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; /** * Data subtree with cardinality 0..1 in the context of parent node - * + * * Node which does not have value but contains valid {@link DataContainerChild} nodes. - * + * * Schema of this node is described by instance of {@link org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode}. - * + * */ public interface ContainerNode extends // AttributesContainer, DataContainerNode, - DataContainerChild>> { + DataContainerChild>> { } diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/DataContainerNode.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/DataContainerNode.java index a9e90d566e..1900a5ee27 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/DataContainerNode.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/DataContainerNode.java @@ -6,6 +6,7 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; /** @@ -42,5 +43,5 @@ public interface DataContainerNode extends // * @return Iteration of all child nodes */ @Override - Iterable> getValue(); + Collection> getValue(); } diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/LeafSetNode.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/LeafSetNode.java index cff390d6df..35f4fb43ff 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/LeafSetNode.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/LeafSetNode.java @@ -7,6 +7,7 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue; @@ -21,7 +22,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithV */ public interface LeafSetNode extends MixinNode, // - DataContainerChild>>, // + DataContainerChild>>, // NormalizedNodeContainer> { } diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/MapNode.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/MapNode.java index d906050dea..e5631d4e7f 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/MapNode.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/MapNode.java @@ -7,6 +7,7 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; @@ -21,7 +22,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent */ public interface MapNode extends // MixinNode, - DataContainerChild>, + DataContainerChild>, NormalizedNodeContainer { } diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/NormalizedNodeContainer.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/NormalizedNodeContainer.java index b416f78fa1..52e5937b90 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/NormalizedNodeContainer.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/NormalizedNodeContainer.java @@ -6,21 +6,21 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; - import com.google.common.base.Optional; +import java.util.Collection; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; /** * Node which is not leaf, but has child {@link NormalizedNode}s as its valzue. - * - * + * + * * NormalizedNodeContainer does not have a value, but it has a child * nodes. Definition of possible and valid child nodes is introduced * in subclasses of this interface. - * + * * This interface should not be used directly, but rather use of of derived subinterfaces * such as {@link DataContainerNode}, {@link MapNode}, {@link LeafSetNode}. - * + * * @param * Node Identifier type * @param @@ -29,21 +29,21 @@ import com.google.common.base.Optional; * Child Node type */ public interface NormalizedNodeContainer> - extends NormalizedNode> { + extends NormalizedNode> { @Override I getIdentifier(); /** * Returns immutable iteration of child nodes of this node. - * + * */ @Override - Iterable getValue(); + Collection getValue(); /** * Returns child node identified by provided key. - * + * * @param child * Path argument identifying child node * @return Optional with child node if child exists. diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/OrderedNodeContainer.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/OrderedNodeContainer.java index 4bc3741f3b..3919c71fba 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/OrderedNodeContainer.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/OrderedNodeContainer.java @@ -7,6 +7,7 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; /** @@ -16,7 +17,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent * * @param child type */ -public interface OrderedNodeContainer> extends MixinNode, NormalizedNode> { +public interface OrderedNodeContainer> extends MixinNode, NormalizedNode> { /** * Returns child node by position diff --git a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/UnkeyedListNode.java b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/UnkeyedListNode.java index 855705d36f..dfa06938e7 100644 --- a/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/UnkeyedListNode.java +++ b/yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/UnkeyedListNode.java @@ -7,6 +7,7 @@ */ package org.opendaylight.yangtools.yang.data.api.schema; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; @@ -26,7 +27,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent * */ public interface UnkeyedListNode extends - DataContainerChild>, + DataContainerChild>, OrderedNodeContainer { } diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetNodeBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetNodeBuilder.java index b4118330e1..82e8dabafc 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetNodeBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableLeafSetNodeBuilder.java @@ -8,13 +8,13 @@ package org.opendaylight.yangtools.yang.data.impl.schema.builder.impl; import com.google.common.base.Optional; -import com.google.common.collect.Iterables; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; import org.opendaylight.yangtools.concepts.Immutable; import org.opendaylight.yangtools.util.MapAdaptor; +import org.opendaylight.yangtools.util.UnmodifiableCollection; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; @@ -108,14 +108,14 @@ public class ImmutableLeafSetNodeBuilder implements ListNodeBuilder extends - AbstractImmutableNormalizedValueNode>> implements + AbstractImmutableNormalizedValueNode>> implements Immutable, LeafSetNode { private final Map> children; ImmutableLeafSetNode(final YangInstanceIdentifier.NodeIdentifier nodeIdentifier, final Map> children) { - super(nodeIdentifier, Iterables.unmodifiableIterable(children.values())); + super(nodeIdentifier, UnmodifiableCollection.create(children.values())); this.children = children; } diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapNodeBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapNodeBuilder.java index 849fc6b37d..dc7b5500c8 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapNodeBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableMapNodeBuilder.java @@ -8,12 +8,12 @@ package org.opendaylight.yangtools.yang.data.impl.schema.builder.impl; import com.google.common.base.Optional; -import com.google.common.collect.Iterables; import java.util.Collection; import java.util.HashMap; import java.util.Map; import org.opendaylight.yangtools.concepts.Immutable; import org.opendaylight.yangtools.util.MapAdaptor; +import org.opendaylight.yangtools.util.UnmodifiableCollection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; @@ -103,7 +103,7 @@ public class ImmutableMapNodeBuilder implements CollectionNodeBuilder> implements Immutable,MapNode { + protected static final class ImmutableMapNode extends AbstractImmutableNormalizedNode> implements Immutable,MapNode { private final Map children; @@ -119,8 +119,8 @@ public class ImmutableMapNodeBuilder implements CollectionNodeBuilder getValue() { - return Iterables.unmodifiableIterable(children.values()); + public Collection getValue() { + return UnmodifiableCollection.create(children.values()); } @Override diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedLeafSetNodeBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedLeafSetNodeBuilder.java index 81e8ae5d81..67eb342fab 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedLeafSetNodeBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedLeafSetNodeBuilder.java @@ -14,6 +14,7 @@ import java.util.Collections; import java.util.LinkedHashMap; import java.util.Map; import org.opendaylight.yangtools.concepts.Immutable; +import org.opendaylight.yangtools.util.UnmodifiableCollection; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; @@ -111,8 +112,8 @@ public class ImmutableOrderedLeafSetNodeBuilder implements ListNodeBuilderemptyMap()); } - protected final static class ImmutableOrderedLeafSetNode extends - AbstractImmutableNormalizedNode>> implements + protected static final class ImmutableOrderedLeafSetNode extends + AbstractImmutableNormalizedNode>> implements Immutable, OrderedLeafSetNode { private final Map> children; @@ -152,10 +153,10 @@ public class ImmutableOrderedLeafSetNodeBuilder implements ListNodeBuilder> getValue() { - return Iterables.unmodifiableIterable(children.values()); - } + @Override + public Collection> getValue() { + return UnmodifiableCollection.create(children.values()); + } } @Override diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedMapNodeBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedMapNodeBuilder.java index fb413da5c4..a7bd82a7e9 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedMapNodeBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableOrderedMapNodeBuilder.java @@ -13,6 +13,7 @@ import java.util.Collection; import java.util.LinkedHashMap; import java.util.Map; import org.opendaylight.yangtools.concepts.Immutable; +import org.opendaylight.yangtools.util.UnmodifiableCollection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; @@ -117,7 +118,7 @@ public class ImmutableOrderedMapNodeBuilder implements CollectionNodeBuilder> implements Immutable,OrderedMapNode { + protected static final class ImmutableOrderedMapNode extends AbstractImmutableNormalizedNode> implements Immutable,OrderedMapNode { private final Map children; @@ -153,8 +154,8 @@ public class ImmutableOrderedMapNodeBuilder implements CollectionNodeBuilder getValue() { - return Iterables.unmodifiableIterable(children.values()); + public Collection getValue() { + return UnmodifiableCollection.create(children.values()); } } } diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableUnkeyedListNodeBuilder.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableUnkeyedListNodeBuilder.java index ec4527da35..eb2d3884bb 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableUnkeyedListNodeBuilder.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/builder/impl/ImmutableUnkeyedListNodeBuilder.java @@ -116,14 +116,14 @@ public class ImmutableUnkeyedListNodeBuilder implements CollectionNodeBuilder> implements Immutable, UnkeyedListNode { + protected static final class EmptyImmutableUnkeyedListNode extends AbstractImmutableNormalizedNode> implements Immutable, UnkeyedListNode { protected EmptyImmutableUnkeyedListNode(final NodeIdentifier nodeIdentifier) { super(nodeIdentifier); } @Override - public Iterable getValue() { - return Collections.emptyList(); + public Collection getValue() { + return Collections.emptySet(); } @Override @@ -148,7 +148,7 @@ public class ImmutableUnkeyedListNodeBuilder implements CollectionNodeBuilder> + AbstractImmutableNormalizedValueNode> implements Immutable, UnkeyedListNode { private final ImmutableList children; 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 b6ac22617a..1b53f7c66d 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,13 +8,14 @@ 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.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( @@ -30,7 +31,7 @@ public abstract class AbstractImmutableDataContainerNode } @Override - public final Iterable> getValue() { + public final Collection> getValue() { return children.values(); } diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/transform/base/serializer/ListNodeBaseSerializer.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/transform/base/serializer/ListNodeBaseSerializer.java index c90df44844..42413be06b 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/transform/base/serializer/ListNodeBaseSerializer.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/transform/base/serializer/ListNodeBaseSerializer.java @@ -10,6 +10,7 @@ package org.opendaylight.yangtools.yang.data.impl.schema.transform.base.serializ import com.google.common.base.Function; import com.google.common.base.Preconditions; import com.google.common.collect.Iterables; +import java.util.Collection; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode; @@ -26,14 +27,14 @@ import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; * @param * entry node type which is inside containing (N) type */ -public abstract class ListNodeBaseSerializer>, O extends DataContainerNode> +public abstract class ListNodeBaseSerializer>, O extends DataContainerNode> implements FromNormalizedNodeSerializer { @Override public final Iterable serialize(final ListSchemaNode schema, final N node) { return Iterables.concat(Iterables.transform(node.getValue(), new Function>() { @Override - public Iterable apply(O input) { + public Iterable apply(final O input) { final Iterable serializedChild = getListEntryNodeSerializer().serialize(schema, input); final int size = Iterables.size(serializedChild); -- 2.36.6