X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-test-model%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Ftest%2Fmodel%2Futil%2FListsBindingUtils.java;h=726b2a6713b950d5774a7e0290c82256a5847747;hb=refs%2Fheads%2Fmaster;hp=a0c23aecb4627c4aec4ab1a828d6d97fe695fc60;hpb=79202e1fd05d2606b35e163f608fad9cce84b5d4;p=controller.git diff --git a/opendaylight/md-sal/sal-test-model/src/main/java/org/opendaylight/controller/md/sal/test/model/util/ListsBindingUtils.java b/opendaylight/md-sal/sal-test-model/src/main/java/org/opendaylight/controller/md/sal/test/model/util/ListsBindingUtils.java index a0c23aecb4..726b2a6713 100644 --- a/opendaylight/md-sal/sal-test-model/src/main/java/org/opendaylight/controller/md/sal/test/model/util/ListsBindingUtils.java +++ b/opendaylight/md-sal/sal-test-model/src/main/java/org/opendaylight/controller/md/sal/test/model/util/ListsBindingUtils.java @@ -7,10 +7,14 @@ */ package org.opendaylight.controller.md.sal.test.model.util; +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.ImmutableMap.Builder; +import com.google.common.collect.Maps; import java.util.Arrays; - import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.augment.rev140709.TreeComplexUsesAugment; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.augment.rev140709.TreeComplexUsesAugmentBuilder; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.augment.rev140709.TreeLeafOnlyUsesAugment; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.augment.rev140709.TreeLeafOnlyUsesAugmentBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.augment.rev140709.complex.from.grouping.ListViaUses; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.augment.rev140709.complex.from.grouping.ListViaUsesBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.augment.rev140709.complex.from.grouping.ListViaUsesKey; @@ -25,21 +29,17 @@ import org.opendaylight.yangtools.yang.binding.Augmentation; import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -import com.google.common.collect.ImmutableList; - -public class ListsBindingUtils { - +public final class ListsBindingUtils { private static final InstanceIdentifier TOP_PATH = InstanceIdentifier.create(Top.class); - private ListsBindingUtils() { - throw new UnsupportedOperationException(); - } - public static final TopLevelListKey TOP_FOO_KEY = new TopLevelListKey("foo"); public static final TopLevelListKey TOP_BAR_KEY = new TopLevelListKey("bar"); public static final ListViaUsesKey USES_ONE_KEY = new ListViaUsesKey("one"); public static final ListViaUsesKey USES_TWO_KEY = new ListViaUsesKey("two"); + private ListsBindingUtils() { + + } public static InstanceIdentifier path(final TopLevelListKey key) { return TOP_PATH.child(TopLevelList.class, key); @@ -53,30 +53,37 @@ public class ListsBindingUtils { return path(top).augmentation(TreeComplexUsesAugment.class).child(ListViaUses.class, uses); } - public static > InstanceIdentifier path(final TopLevelListKey key, final Class augmentation) { + public static > InstanceIdentifier path( + final TopLevelListKey key, final Class augmentation) { return path(key).augmentation(augmentation); } public static Top top(final TopLevelList... listItems) { - return new TopBuilder().setTopLevelList(Arrays.asList(listItems)).build(); + return new TopBuilder().setTopLevelList(Maps.uniqueIndex(Arrays.asList(listItems), TopLevelList::key)).build(); } public static TopLevelList topLevelList(final TopLevelListKey key) { - return new TopLevelListBuilder().setKey(key).build(); + return new TopLevelListBuilder().withKey(key).build(); } public static TopLevelList topLevelList(final TopLevelListKey key, final TreeComplexUsesAugment augment) { - TopLevelListBuilder builder = new TopLevelListBuilder().setKey(key); - builder.addAugmentation(TreeComplexUsesAugment.class, augment); - return builder.build(); + final TopLevelListBuilder builder = new TopLevelListBuilder(); + if (augment != null) { + builder.addAugmentation(augment); + } + return builder.withKey(key).build(); } public static TreeComplexUsesAugment complexUsesAugment(final ListViaUsesKey... keys) { - ImmutableList.Builder listViaUses = ImmutableList. builder(); + Builder listViaUses = ImmutableMap.builderWithExpectedSize(keys.length); for (ListViaUsesKey key : keys) { - listViaUses.add(new ListViaUsesBuilder().setKey(key).build()); + listViaUses.put(key, new ListViaUsesBuilder().withKey(key).build()); } return new TreeComplexUsesAugmentBuilder().setListViaUses(listViaUses.build()).build(); } + public static TreeLeafOnlyUsesAugment leafOnlyUsesAugment(final String leafFromGroupingValue) { + + return new TreeLeafOnlyUsesAugmentBuilder().setLeafFromGrouping(leafFromGroupingValue).build(); + } }