Package com.google.common.collect
Class MutableClassToInstanceMap<B extends @Nullable Object>
- 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 alsoImmutableClassToInstanceMap.See the Guava User Guide article on
ClassToInstanceMap.- Since:
 - 2.0
 - Author:
 - Kevin Bourrillion
 - See Also:
 - Serialized Form
 
 
- 
- 
Nested Class Summary
- 
Nested classes/interfaces inherited from class com.google.common.collect.ForwardingMap
ForwardingMap.StandardEntrySet, ForwardingMap.StandardKeySet, ForwardingMap.StandardValues 
 - 
 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <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>create(Map<Class<? extends @NonNull B>,B> backingMap)Returns a newMutableClassToInstanceMapinstance backed by a given emptybackingMap.protected Map<Class<? extends @NonNull B>,B>delegate()Returns the backing delegate instance that methods are forwarded to.Set<Map.Entry<Class<? extends @NonNull B>,B>>entrySet()<T extends @NonNull B>
TgetInstance(Class<T> type)Returns the value the specified class is mapped to, ornullif no entry for this class is present.Bput(Class<? extends @NonNull B> key, B value)voidputAll(Map<? extends Class<? extends @NonNull B>,? extends B> map)<T extends B>
TputInstance(Class<@NonNull T> type, T value)Maps the specified class to the specified value.- 
Methods inherited from class com.google.common.collect.ForwardingMap
clear, containsKey, containsValue, equals, get, hashCode, isEmpty, keySet, remove, size, standardClear, standardContainsKey, standardContainsValue, standardEquals, standardHashCode, standardIsEmpty, standardPutAll, standardRemove, standardToString, values 
- 
Methods inherited from class com.google.common.collect.ForwardingObject
toString 
- 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait 
- 
Methods inherited from interface java.util.Map
clear, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, equals, forEach, get, getOrDefault, hashCode, isEmpty, keySet, merge, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values 
 - 
 
 - 
 
- 
- 
Method Detail
- 
create
public static <B extends @Nullable Object> MutableClassToInstanceMap<B> create()
Returns a newMutableClassToInstanceMapinstance backed by aHashMapusing the default initial capacity and load factor. 
- 
create
public 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. 
- 
delegate
protected Map<Class<? extends @NonNull B>,B> delegate()
Description 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. 
- 
put
@CanIgnoreReturnValue @CheckForNull public B put(Class<? extends @NonNull B> key, B value)
 
- 
putInstance
@CanIgnoreReturnValue @CheckForNull public <T extends B> T putInstance(Class<@NonNull T> type, T value)
Description 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 interfaceClassToInstanceMap<B extends @Nullable Object>- Returns:
 - the value previously associated with this class (possibly 
null), ornullif there was no previous entry. 
 
- 
getInstance
@CheckForNull public <T extends @NonNull B> T getInstance(Class<T> type)
Description 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 interfaceClassToInstanceMap<B extends @Nullable Object>
 
 - 
 
 -