T
- The fully qualified type of the set, including Set. For example:
MultibinderBinding<Set<Boolean>>
public interface MultibinderBinding<T>
Modifier and Type | Method and Description |
---|---|
boolean |
containsElement(Element element)
Returns true if this Multibinder uses the given Element.
|
java.util.List<Binding<?>> |
getElements()
Returns all bindings that make up the set.
|
TypeLiteral<?> |
getElementTypeLiteral()
Returns the TypeLiteral that describes the type of elements in the set.
|
Key<T> |
getSetKey()
Returns the key for the set.
|
boolean |
permitsDuplicates()
Returns true if the multibinder permits duplicates.
|
TypeLiteral<?> getElementTypeLiteral()
The elements will always match the type Set's generic type. For example, if getSetKey
returns a key of Set<String>
, then this will always return a
TypeLiteral<String>
.
java.util.List<Binding<?>> getElements()
UnsupportedOperationException
if it is called on an element
retrieved from Elements.getElements(com.google.inject.Module...)
.
The elements will always match the type Set's generic type. For example, if getSetKey
returns a key of Set<String>
, then this will always return a list of type
List<Binding<String>>
.
boolean permitsDuplicates()
UnsupportedOperationException
if it is called on a
MultibinderBinding retrieved from Elements.getElements(com.google.inject.Module...)
.boolean containsElement(Element element)
Elements.getElements(com.google.inject.Module...)
.
Usually this is only necessary if you are working with elements retrieved from modules (without
an Injector), otherwise getElements()
and permitsDuplicates()
are better options.
If you need to introspect the details of the set, such as the values or if it permits
duplicates, it is necessary to pass the elements through an Injector and use getElements()
and permitsDuplicates()
.