java.lang.Object
com.google.common.collect.ForwardingObject
com.google.common.collect.ForwardingMap<Class<? extends @NonNull B>, B>
com.google.common.collect.MutableClassToInstanceMap<B>
- All Implemented Interfaces:
- ClassToInstanceMap<B>,- Serializable,- Map<Class<? extends B>, B>
@GwtIncompatible
public final class MutableClassToInstanceMap<B extends @Nullable Object>
extends ForwardingMap<Class<? extends @NonNull B>, B>
implements ClassToInstanceMap<B>, Serializable
A mutable class-to-instance map backed by an arbitrary user-provided map. See also 
ImmutableClassToInstanceMap.
 See the Guava User Guide article on 
 ClassToInstanceMap.
- Since:
- 2.0
- Author:
- Kevin Bourrillion
- See Also:
- 
Nested Class SummaryNested classes/interfaces inherited from class com.google.common.collect.ForwardingMapForwardingMap.StandardEntrySet, ForwardingMap.StandardKeySet, ForwardingMap.StandardValues
- 
Method SummaryModifier and TypeMethodDescriptionstatic <B extends @Nullable Object>
 MutableClassToInstanceMap<B> create()Returns a newMutableClassToInstanceMapinstance backed by aHashMapusing the default initial capacity and load factor.static <B extends @Nullable Object>
 MutableClassToInstanceMap<B> Returns a newMutableClassToInstanceMapinstance backed by a given emptybackingMap.delegate()Returns the backing delegate instance that methods are forwarded to.entrySet()getInstance(Class<T> type) Returns the value the specified class is mapped to, ornullif no entry for this class is present.voidputInstance(Class<@NonNull T> type, T value) Maps the specified class to the specified value.Methods inherited from class com.google.common.collect.ForwardingMapclear, containsKey, containsValue, equals, get, hashCode, isEmpty, keySet, remove, size, standardClear, standardContainsKey, standardContainsValue, standardEquals, standardHashCode, standardIsEmpty, standardPutAll, standardRemove, standardToString, valuesMethods inherited from class com.google.common.collect.ForwardingObjecttoStringMethods inherited from class java.lang.Objectclone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Mapclear, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, equals, forEach, get, getOrDefault, hashCode, isEmpty, keySet, merge, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values
- 
Method Details- 
createReturns a newMutableClassToInstanceMapinstance backed by aHashMapusing the default initial capacity and load factor.
- 
createpublic static <B extends @Nullable Object> MutableClassToInstanceMap<B> create(Map<Class<? extends @NonNull B>, B> backingMap) Returns a newMutableClassToInstanceMapinstance backed by a given emptybackingMap. The caller surrenders control of the backing map, and thus should not allow any direct references to it to remain accessible.
- 
delegateDescription copied from class:ForwardingObjectReturns the backing delegate instance that methods are forwarded to. Abstract subclasses generally override this method with an abstract method that has a more specific return type, such asForwardingSet.delegate(). Concrete subclasses override this method to supply the instance being decorated.
- 
entrySet
- 
put
- 
putAll
- 
putInstanceDescription copied from interface:ClassToInstanceMapMaps the specified class to the specified value. Does not associate this value with any of the class's supertypes.- Specified by:
- putInstancein interface- ClassToInstanceMap<B extends @Nullable Object>
- Returns:
- the value previously associated with this class (possibly null), ornullif there was no previous entry.
 
- 
getInstanceDescription copied from interface:ClassToInstanceMapReturns the value the specified class is mapped to, ornullif no entry for this class is present. This will only return a value that was bound to this specific class, not a value that may have been bound to a subtype.- Specified by:
- getInstancein interface- ClassToInstanceMap<B extends @Nullable Object>
 
 
-