/** * Map of child->parent. Neither the Keys or values can be null. */ public DefaultInputModuleHierarchy(DefaultInputModule root, Map<DefaultInputModule, DefaultInputModule> parents) { ImmutableMultimap.Builder<DefaultInputModule, DefaultInputModule> childrenBuilder = new ImmutableMultimap.Builder<>(); for (Map.Entry<DefaultInputModule, DefaultInputModule> e : parents.entrySet()) { childrenBuilder.put(e.getValue(), e.getKey()); } this.children = childrenBuilder.build(); this.parents = Collections.unmodifiableMap(new HashMap<>(parents)); this.root = root; }
public DefaultInputModuleHierarchy(DefaultInputModule root) { this.children = new ImmutableMultimap.Builder<DefaultInputModule, DefaultInputModule>().build(); this.parents = Collections.emptyMap(); this.root = root; }
public void testIndexIterator() { final Multimap<String, Object> stringToObject = new ImmutableMultimap.Builder<String, Object>() .put("1", 1) .put("1", 1L) .put("1", "1") .put("2", 2) .put("2", 2L) .build(); ImmutableMultimap<String, Object> outputMap = Multimaps.index(stringToObject.values().iterator(), Functions.toStringFunction()); assertEquals(stringToObject, outputMap); }
/** * Returns a new builder. The generated builder is equivalent to the builder * created by the {@link Builder} constructor. */ public static <K, V> Builder<K, V> builder() { return new Builder<K, V>(); }
/** * Map of child->parent. Neither the Keys or values can be null. */ public DefaultInputModuleHierarchy(DefaultInputModule root, Map<DefaultInputModule, DefaultInputModule> parents) { ImmutableMultimap.Builder<DefaultInputModule, DefaultInputModule> childrenBuilder = new ImmutableMultimap.Builder<>(); for (Map.Entry<DefaultInputModule, DefaultInputModule> e : parents.entrySet()) { childrenBuilder.put(e.getValue(), e.getKey()); } this.children = childrenBuilder.build(); this.parents = Collections.unmodifiableMap(new HashMap<>(parents)); this.root = root; }
/** * Returns a new builder. The generated builder is equivalent to the builder * created by the {@link Builder} constructor. */ public static <K, V> Builder<K, V> builder() { return new Builder<K, V>(); }
/** * Returns a new builder. The generated builder is equivalent to the builder * created by the {@link Builder} constructor. */ public static <K, V> Builder<K, V> builder() { return new Builder<K, V>(); }
/** * Returns a new builder. The generated builder is equivalent to the builder * created by the {@link Builder} constructor. */ public static <K, V> Builder<K, V> builder() { return new Builder<K, V>(); }
@Test void testBuildCanonicalizedString() { assertEquals( staticCredentialsFilter.buildCanonicalizedString(new ImmutableMultimap.Builder<String, String>() .put("AWSAccessKeyId", "foo").put("Action", "DescribeImages").put("Expires", "2008-02-10T12:00:00Z") .put("ImageId.1", "ami-2bb65342").put("SignatureMethod", "HmacSHA256").put("SignatureVersion", "2") .put("Version", "2010-06-15").build()), "AWSAccessKeyId=foo&Action=DescribeImages&Expires=2008-02-10T12%3A00%3A00Z&ImageId.1=ami-2bb65342&SignatureMethod=HmacSHA256&SignatureVersion=2&Version=2010-06-15"); }
private ImmutableMultimap<ResourceId, ConfigValue> getClaimedConfigs( Iterable<ModuleSplit> moduleSplits) { ImmutableMultimap.Builder<ResourceId, ConfigValue> result = new ImmutableMultimap.Builder<>(); for (ModuleSplit moduleSplit : moduleSplits) { checkState( moduleSplit.getResourceTable().isPresent(), "Resource table not found in the density split."); for (Package pkg : moduleSplit.getResourceTable().get().getPackageList()) { for (Type type : pkg.getTypeList()) { for (Entry entry : type.getEntryList()) { for (ConfigValue configValue : entry.getConfigValueList()) { result.put(ResourceId.create(pkg, type, entry), configValue); } } } } } return result.build(); }
Operator<?> start, Set<Class<? extends Operator<?>>> classes) { ImmutableMultimap.Builder<Class<? extends Operator<?>>, Operator<?>> resultMap = new ImmutableMultimap.Builder<Class<? extends Operator<?>>, Operator<?>>(); List<Operator<?>> ops = new ArrayList<Operator<?>>(); ops.add(start);
Operator<?> start, Set<Class<? extends Operator<?>>> classes) { ImmutableMultimap.Builder<Class<? extends Operator<?>>, Operator<?>> resultMap = new ImmutableMultimap.Builder<Class<? extends Operator<?>>, Operator<?>>(); List<Operator<?>> ops = new ArrayList<Operator<?>>(); ops.add(start);
/** * Returns a new builder. The generated builder is equivalent to the builder created by the {@link * Builder} constructor. */ public static <K, V> Builder<K, V> builder() { return new Builder<>(); }
/** * Returns a new builder. The generated builder is equivalent to the builder created by the {@link * Builder} constructor. */ public static <K, V> Builder<K, V> builder() { return new Builder<>(); }
public void testBuilder_withMutableEntry() { ImmutableMultimap.Builder<String, Integer> builder = new Builder<>(); final StringHolder holder = new StringHolder(); holder.string = "one"; Entry<String, Integer> entry = new AbstractMapEntry<String, Integer>() { @Override public String getKey() { return holder.string; } @Override public Integer getValue() { return 1; } }; builder.put(entry); holder.string = "two"; assertEquals(Arrays.asList(1), builder.build().get("one")); }
public void testInvertFrom() { ImmutableMultimap<Integer, String> empty = ImmutableMultimap.of(); // typical usage example - sad that ArrayListMultimap.create() won't work Multimap<String, Integer> multimap = Multimaps.invertFrom(empty, ArrayListMultimap.<String, Integer>create()); assertTrue(multimap.isEmpty()); ImmutableMultimap<Integer, String> single = new ImmutableMultimap.Builder<Integer, String>().put(1, "one").put(2, "two").build(); // copy into existing multimap assertSame(multimap, Multimaps.invertFrom(single, multimap)); ImmutableMultimap<String, Integer> expected = new ImmutableMultimap.Builder<String, Integer>().put("one", 1).put("two", 2).build(); assertEquals(expected, multimap); }
public void testIndex() { final Multimap<String, Object> stringToObject = new ImmutableMultimap.Builder<String, Object>() .put("1", 1) .put("1", 1L) .put("1", "1") .put("2", 2) .put("2", 2L) .build(); ImmutableMultimap<String, Object> outputMap = Multimaps.index(stringToObject.values(), Functions.toStringFunction()); assertEquals(stringToObject, outputMap); }
public void testBuilder_withImmutableEntryAndNullContents() { Builder<String, Integer> builder = new Builder<>(); try { builder.put(Maps.immutableEntry("one", (Integer) null)); fail(); } catch (NullPointerException expected) { } try { builder.put(Maps.immutableEntry((String) null, 1)); fail(); } catch (NullPointerException expected) { } }
public void testBuilder_withImmutableEntry() { ImmutableMultimap<String, Integer> multimap = new Builder<String, Integer>().put(Maps.immutableEntry("one", 1)).build(); assertEquals(Arrays.asList(1), multimap.get("one")); }
/** * Returns a new builder. The generated builder is equivalent to the builder created by the {@link * Builder} constructor. */ public static <K, V> Builder<K, V> builder() { return new Builder<>(); }