@SuppressWarnings("deprecation") public void testUnmodifiableListMultimapShortCircuit() { ListMultimap<String, Integer> mod = ArrayListMultimap.create(); ListMultimap<String, Integer> unmod = Multimaps.unmodifiableListMultimap(mod); assertNotSame(mod, unmod); assertSame(unmod, Multimaps.unmodifiableListMultimap(unmod)); ImmutableListMultimap<String, Integer> immutable = ImmutableListMultimap.of("a", 1, "b", 2, "a", 3); assertSame(immutable, Multimaps.unmodifiableListMultimap(immutable)); assertSame( immutable, Multimaps.unmodifiableListMultimap((ListMultimap<String, Integer>) immutable)); }
public void testUnmodifiableArrayListMultimapRandomAccess() { ListMultimap<String, Integer> delegate = ArrayListMultimap.create(); delegate.put("foo", 1); delegate.put("foo", 3); ListMultimap<String, Integer> multimap = Multimaps.unmodifiableListMultimap(delegate); assertTrue(multimap.get("foo") instanceof RandomAccess); assertTrue(multimap.get("bar") instanceof RandomAccess); }
public void testUnmodifiableLinkedListMultimapRandomAccess() { ListMultimap<String, Integer> delegate = LinkedListMultimap.create(); delegate.put("foo", 1); delegate.put("foo", 3); ListMultimap<String, Integer> multimap = Multimaps.unmodifiableListMultimap(delegate); assertFalse(multimap.get("foo") instanceof RandomAccess); assertFalse(multimap.get("bar") instanceof RandomAccess); }
unmodifiable = Multimaps.unmodifiableSetMultimap((SetMultimap<String, Integer>) multimap); } else if (multimap instanceof ListMultimap) { unmodifiable = Multimaps.unmodifiableListMultimap((ListMultimap<String, Integer>) multimap); } else { unmodifiable = Multimaps.unmodifiableMultimap(multimap);
/** * Returns an unmodifiable multimap of the params, where the * key is the param type and the value is the actual instance */ public ListMultimap<Class<?>, Object> getParamsForType() { return Multimaps.unmodifiableListMultimap(myParams); }
/** * Returns a {@link Multimap} which keys are registrations keys and the values are the {@link ConfigurationInstance} instances * which are expired * * @return an immutable {@link Multimap} */ Multimap<String, ConfigurationInstance> getExpiredConfigs() { ListMultimap<String, ConfigurationInstance> expired = ArrayListMultimap.create(); for (ExtensionModel extensionModel : extensions.values()) { getConfigurationProviders(extensionModel).stream().filter(provider -> provider instanceof ExpirableConfigurationProvider) .forEach(provider -> expired.putAll(provider.getName(), ((ExpirableConfigurationProvider) provider).getExpired())); } return Multimaps.unmodifiableListMultimap(expired); }
public ListMultimap<Class<? extends Annotation>, FieldEntry> getFieldAnnotations() { return Multimaps.unmodifiableListMultimap(_fieldAnnotations); } }
public ListMultimap<Class<? extends Annotation>, ClassEntry> getTypeAnnotations() { return Multimaps.unmodifiableListMultimap(_typeAnnotations); }
public ListMultimap<String, String> getPackagesMap() { return Multimaps.unmodifiableListMultimap(packagesMap); }
public ListMultimap<Class<? extends Annotation>, MethodEntry> getMethodAnnotations() { return Multimaps.unmodifiableListMultimap(_methodAnnotations); }
public void fix(boolean requireDirected) { adjacencies = Multimaps.unmodifiableListMultimap(adjacencies); allNodes = Collections.unmodifiableSet(allNodes); if (requireDirected) { List<List<Node>> cyclicReferences = GraphAlgos.checkDirected(this); if (cyclicReferences.size() > 0) { throw new IllegalArgumentException( "A logical plan must be a valid DAG. You have cyclic references in your graph. " + cyclicReferences); } } }
private ListMultimap<String, Parameter> groupByFirstNameComponent(final List<Parameter> parameters) { final ListMultimap<String, Parameter> firstNameComponentToParameterMap = ArrayListMultimap.create(); for (final Parameter parameter : parameters) { firstNameComponentToParameterMap.put(parameter.getFirstNameComponent(), parameter); } return Multimaps.unmodifiableListMultimap(firstNameComponentToParameterMap); }
protected ListMultimap<String, JvmFeature> computeAllFeatures() { JvmType rawType = getRawType(); if (!(rawType instanceof JvmDeclaredType)) { return ArrayListMultimap.create(); } ListMultimap<String, JvmFeature> result = ArrayListMultimap.create(); Multimap<String, AbstractResolvedOperation> processed = HashMultimap.create(); Set<String> processedFields = Sets.newHashSetWithExpectedSize(5); computeAllFeatures((JvmDeclaredType)rawType, processed, processedFields, result, featureIndex.keySet()); return Multimaps.unmodifiableListMultimap(result); }
private ListMultimap<Integer, Parameter> groupByIndex(final Parameters parameters, final Target<?> target) { final List<Parameter> relevant = parameters.forTarget(target); final List<Parameter> sorted = Ordering.natural().onResultOf(EXTRACT_INDEX_OR_RETURN_NEGATIVE).sortedCopy(relevant); final ListMultimap<Integer, Parameter> map = LinkedListMultimap.create(); for (final Parameter parameter : sorted) { final Integer index = EXTRACT_INDEX_OR_RETURN_NEGATIVE.apply(parameter); if (index >= 0) map.put(index, parameter); } return Multimaps.unmodifiableListMultimap(map); }
/** * Returns a {@link Multimap} which keys are registrations keys and the values are the {@link ConfigurationInstance} instances * which are expired * * @return an immutable {@link Multimap} */ Multimap<String, ConfigurationInstance> getExpiredConfigs() { ListMultimap<String, ConfigurationInstance> expired = ArrayListMultimap.create(); for (ExtensionModel extensionModel : extensions.values()) { getConfigurationProviders(extensionModel).stream().filter(provider -> provider instanceof ExpirableConfigurationProvider) .forEach(provider -> expired.putAll(provider.getName(), ((ExpirableConfigurationProvider) provider).getExpired())); } return Multimaps.unmodifiableListMultimap(expired); }
/** * Returns an unmodifiable view of the specified parameter map. This method * allows modules to provide users with "read-only" access to internal * parameter maps. Query operations on the returned map "read through" to the * specified map, and attempts to modify the returned map, whether direct or * via its iterator or collection views, result in an {@code * UnsupportedOperationException}. * * @param map the parameter map for which to return an unmodifiable view * @return an unmodifiable view of the specified parameter map * @throws NullPointerException if {@code map} is null */ public static UriParameterMap unmodifiableMap(UriParameterMap map) { return new UriParameterMap( Multimaps.unmodifiableListMultimap(map.delegate())); }
/** * Returns an unmodifiable view of the specified parameter map. This method * allows modules to provide users with "read-only" access to internal * parameter maps. Query operations on the returned map "read through" to the * specified map, and attempts to modify the returned map, whether direct or * via its iterator or collection views, result in an {@code * UnsupportedOperationException}. * * @param map the parameter map for which to return an unmodifiable view * @return an unmodifiable view of the specified parameter map * @throws NullPointerException if {@code map} is null */ public static UriParameterMap unmodifiableMap(UriParameterMap map) { return new UriParameterMap( Multimaps.unmodifiableListMultimap(map.delegate())); }
@SuppressWarnings("deprecation") public void testUnmodifiableListMultimapShortCircuit() { ListMultimap<String, Integer> mod = ArrayListMultimap.create(); ListMultimap<String, Integer> unmod = Multimaps.unmodifiableListMultimap(mod); assertNotSame(mod, unmod); assertSame(unmod, Multimaps.unmodifiableListMultimap(unmod)); ImmutableListMultimap<String, Integer> immutable = ImmutableListMultimap.of("a", 1, "b", 2, "a", 3); assertSame(immutable, Multimaps.unmodifiableListMultimap(immutable)); assertSame( immutable, Multimaps.unmodifiableListMultimap((ListMultimap<String, Integer>) immutable)); }
public void testUnmodifiableArrayListMultimapRandomAccess() { ListMultimap<String, Integer> delegate = ArrayListMultimap.create(); delegate.put("foo", 1); delegate.put("foo", 3); ListMultimap<String, Integer> multimap = Multimaps.unmodifiableListMultimap(delegate); assertTrue(multimap.get("foo") instanceof RandomAccess); assertTrue(multimap.get("bar") instanceof RandomAccess); }
public void testUnmodifiableLinkedListMultimapRandomAccess() { ListMultimap<String, Integer> delegate = LinkedListMultimap.create(); delegate.put("foo", 1); delegate.put("foo", 3); ListMultimap<String, Integer> multimap = Multimaps.unmodifiableListMultimap(delegate); assertFalse(multimap.get("foo") instanceof RandomAccess); assertFalse(multimap.get("bar") instanceof RandomAccess); }