public static final class ImmutableTypeToInstanceMap.Builder<B>
extends java.lang.Object
static final ImmutableTypeToInstanceMap<Handler<?>> HANDLERS =
ImmutableTypeToInstanceMap.<Handler<?>>builder()
.put(new TypeToken<Handler<Foo>>() {}, new FooHandler())
.put(new TypeToken<Handler<Bar>>() {}, new SubBarHandler())
.build();
After invoking build()
it is still possible to add more entries and build again.
Thus each map generated by this builder will be a superset of any map generated before it.
Modifier and Type | Field and Description |
---|---|
private ImmutableMap.Builder<TypeToken<? extends B>,B> |
mapBuilder |
Modifier | Constructor and Description |
---|---|
private |
Builder() |
Modifier and Type | Method and Description |
---|---|
ImmutableTypeToInstanceMap<B> |
build()
Returns a new immutable type-to-instance map containing the entries provided to this builder.
|
<T extends B> |
put(java.lang.Class<T> key,
T value)
Associates
key with value in the built map. |
<T extends B> |
put(TypeToken<T> key,
T value)
Associates
key with value in the built map. |
private final ImmutableMap.Builder<TypeToken<? extends B>,B> mapBuilder
public <T extends B> ImmutableTypeToInstanceMap.Builder<B> put(java.lang.Class<T> key, T value)
key
with value
in the built map. Duplicate keys are not allowed,
and will cause build()
to fail.public <T extends B> ImmutableTypeToInstanceMap.Builder<B> put(TypeToken<T> key, T value)
key
with value
in the built map. Duplicate keys are not allowed,
and will cause build()
to fail.public ImmutableTypeToInstanceMap<B> build()
java.lang.IllegalArgumentException
- if duplicate keys were added