Class ImmutableTypeToInstanceMap<B>
java.lang.Object
com.google.common.collect.ForwardingObject
com.google.common.collect.ForwardingMap<TypeToken<? extends B>, B>
com.google.common.reflect.ImmutableTypeToInstanceMap<B>
- All Implemented Interfaces:
TypeToInstanceMap<B>, Map<TypeToken<? extends B>, B>
public final class ImmutableTypeToInstanceMap<B>
extends ForwardingMap<TypeToken<? extends B>, B>
implements TypeToInstanceMap<B>
A type-to-instance map backed by an
ImmutableMap. See also MutableTypeToInstanceMap.- Since:
- 13.0
- Author:
- Ben Yu
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classA builder for creating immutable type-to-instance maps.Nested classes/interfaces inherited from class ForwardingMap
ForwardingMap.StandardEntrySet, ForwardingMap.StandardKeySet, ForwardingMap.StandardValues -
Method Summary
Modifier and TypeMethodDescriptionstatic <B> ImmutableTypeToInstanceMap.Builder<B> builder()Returns a new builder.delegate()Returns the backing delegate instance that methods are forwarded to.getInstance(TypeToken<T> type) Returns the value the specified type is mapped to, ornullif no entry for this type is present.getInstance(Class<T> type) Returns the value the specified class is mapped to, ornullif no entry for this class is present.static <B> ImmutableTypeToInstanceMap<B> of()Returns an empty type to instance map.Deprecated.unsupported operationvoidDeprecated.unsupported operationputInstance(TypeToken<T> type, T value) Deprecated.unsupported operationputInstance(Class<T> type, T value) Deprecated.unsupported operationMethods inherited from class ForwardingMap
clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, remove, size, standardClear, standardContainsKey, standardContainsValue, standardEquals, standardHashCode, standardIsEmpty, standardPutAll, standardRemove, standardToString, valuesMethods inherited from class ForwardingObject
toStringMethods inherited from interface Map
clear, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, equals, forEach, get, getOrDefault, hashCode, isEmpty, keySet, merge, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values
-
Method Details
-
of
Returns an empty type to instance map. -
builder
Returns a new builder. -
getInstance
Description copied from interface:TypeToInstanceMapReturns the value the specified type is mapped to, ornullif no entry for this type is present. This will only return a value that was bound to this specific type, not a value that may have been bound to a subtype.- Specified by:
getInstancein interfaceTypeToInstanceMap<B>
-
getInstance
Description copied from interface:TypeToInstanceMapReturns 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.getInstance(Foo.class)is equivalent togetInstance(TypeToken.of(Foo.class)).- Specified by:
getInstancein interfaceTypeToInstanceMap<B>
-
putInstance
@CanIgnoreReturnValue @Deprecated public <T extends B> @Nullable T putInstance(TypeToken<T> type, T value) Deprecated.unsupported operationGuaranteed to throw an exception and leave the map unmodified.- Specified by:
putInstancein interfaceTypeToInstanceMap<B>- Returns:
- the value previously associated with this type (possibly
null), ornullif there was no previous entry. - Throws:
UnsupportedOperationException- always
-
putInstance
@CanIgnoreReturnValue @Deprecated public <T extends B> @Nullable T putInstance(Class<T> type, T value) Deprecated.unsupported operationGuaranteed to throw an exception and leave the map unmodified.- Specified by:
putInstancein interfaceTypeToInstanceMap<B>- Returns:
- the value previously associated with this class (possibly
null), ornullif there was no previous entry. - Throws:
UnsupportedOperationException- always
-
put
Deprecated.unsupported operationGuaranteed to throw an exception and leave the map unmodified. -
putAll
Deprecated.unsupported operationGuaranteed to throw an exception and leave the map unmodified. -
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.- Specified by:
delegatein classForwardingMap<TypeToken<? extends B>, B>
-