com.google.inject.multibindings.MapBinderBinding<T> |
A binding for a MapBinder.
Although MapBinders may be injected through a variety of generic types (Map<K, V>, Map
<K, Provider<V>>, Map<K, Set<V>>, MapcontainsElement(Element)
.
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Returns true if this MapBinder contains the given Element in order to build the map or uses the
given Element in order to support building and injecting the map.
| |||||||||||
Returns all entries in the Map.
| |||||||||||
Returns the TypeLiteral describing the keys of the map.
| |||||||||||
Returns the
Key for the map. | |||||||||||
Returns the TypeLiteral describing the values of the map.
| |||||||||||
Returns true if the MapBinder permits duplicates.
|
Returns true if this MapBinder contains the given Element in order to build the map or uses the
given Element in order to support building and injecting the map. This will work for
MapBinderBindings retrieved from an injector and getElements(Module...)
. Usually this is
only necessary if you are working with elements retrieved from modules (without an Injector),
otherwise getEntries()
and permitsDuplicates()
are better options.
If you need to introspect the details of the map, such as the keys, values or if it permits
duplicates, it is necessary to pass the elements through an Injector and use
getEntries()
and permitsDuplicates()
.
Returns all entries in the Map. The returned list of Map.Entries contains the key and a binding
to the value. Duplicate keys or values will exist as separate Map.Entries in the returned list.
This is only supported on bindings returned from an injector. This will throw
UnsupportedOperationException if it is called on an element retrieved from
getElements(Module...)
.
The elements will always match the type Map's generic type. For example, if getMapKey returns a
key of Map<String, Snack>
, then this will always return a list of type
List<Map.Entry<String, Binding<Snack>>>
.
Returns the TypeLiteral describing the keys of the map.
The TypeLiteral will always match the type Map's generic type. For example, if getMapKey
returns a key of Map<String, Snack>
, then this will always return a
TypeLiteral<String>
.
Returns the TypeLiteral describing the values of the map.
The TypeLiteral will always match the type Map's generic type. For example, if getMapKey
returns a key of Map<String, Snack>
, then this will always return a
TypeLiteral<Snack>
.
Returns true if the MapBinder permits duplicates. This is only supported on bindings returned
from an injector. This will throw UnsupportedOperationException if it is called on a
MapBinderBinding retrieved from getElements(Module...)
.