static final class OptionalBinder.RealOptionalBinder<T> extends OptionalBinder<T> implements Module
Modifier and Type | Class and Description |
---|---|
(package private) class |
OptionalBinder.RealOptionalBinder.JavaOptionalProvider |
(package private) class |
OptionalBinder.RealOptionalBinder.JavaOptionalProviderProvider |
(package private) class |
OptionalBinder.RealOptionalBinder.RealDirectTypeProvider |
private static class |
OptionalBinder.RealOptionalBinder.RealOptionalBinderProviderWithDependencies<T>
A base class for ProviderWithDependencies that need equality based on a specific object.
|
(package private) class |
OptionalBinder.RealOptionalBinder.RealOptionalKeyProvider |
(package private) class |
OptionalBinder.RealOptionalBinder.RealOptionalProviderProvider |
OptionalBinder.Actual, OptionalBinder.ActualImpl, OptionalBinder.BaseAnnotation, OptionalBinder.Default, OptionalBinder.DefaultImpl, OptionalBinder.RealOptionalBinder<T>, OptionalBinder.Source
Modifier and Type | Field and Description |
---|---|
private Binding<T> |
actualBinding
the actual binding, for the SPI
|
private Key<T> |
actualKey |
private Binder |
binder
the target injector's binder.
|
private Binding<T> |
defaultBinding
the default binding, for the SPI.
|
private Key<T> |
defaultKey |
private java.util.Set<Dependency<?>> |
dependencies
the dependencies -- initialized with defaults & overridden when tooled.
|
private Key |
javaOptionalJavaxProviderKey |
private Key |
javaOptionalKey |
private Key |
javaOptionalProviderKey |
private Key<com.google.common.base.Optional<javax.inject.Provider<T>>> |
optionalJavaxProviderKey |
private Key<com.google.common.base.Optional<T>> |
optionalKey |
private Key<com.google.common.base.Optional<Provider<T>>> |
optionalProviderKey |
private Provider<com.google.common.base.Optional<Provider<T>>> |
optionalProviderT |
private java.util.Set<Dependency<?>> |
providerDependencies
the dependencies -- initialized with defaults & overridden when tooled.
|
private Key<T> |
typeKey |
Modifier | Constructor and Description |
---|---|
private |
RealOptionalBinder(Binder binder,
Key<T> typeKey) |
Modifier and Type | Method and Description |
---|---|
private void |
addDirectTypeBinding(Binder binder)
Adds a binding for T.
|
private void |
bindJava8Optional(Binder binder) |
void |
configure(Binder binder)
Contributes bindings and other configurations for this module to
binder . |
private boolean |
containsElement(Element element) |
boolean |
equals(java.lang.Object o) |
private Binding<?> |
getActualBinding() |
private Binding<?> |
getDefaultBinding() |
(package private) Key<T> |
getKeyForActualBinding() |
(package private) Key<T> |
getKeyForDefaultBinding() |
int |
hashCode() |
private boolean |
isInitialized() |
private boolean |
matchesJ8Keys(Key<?> elementKey) |
private boolean |
matchesTypeKey(Element element,
Key<?> elementKey)
Returns true if the key & element indicate they were bound by this OptionalBinder.
|
LinkedBindingBuilder<T> |
setBinding()
Returns a binding builder used to set the actual value that will be injected.
|
LinkedBindingBuilder<T> |
setDefault()
Returns a binding builder used to set the default value that will be injected.
|
javaOptionalOf, javaOptionalOfJavaxProvider, javaOptionalOfProvider, newOptionalBinder, newOptionalBinder, newOptionalBinder, newRealOptionalBinder, optionalOf, optionalOfJavaxProvider, optionalOfProvider, providerOf
private final Key<com.google.common.base.Optional<javax.inject.Provider<T>>> optionalJavaxProviderKey
private final Key<com.google.common.base.Optional<Provider<T>>> optionalProviderKey
private final Provider<com.google.common.base.Optional<Provider<T>>> optionalProviderT
private final Key javaOptionalKey
private final Key javaOptionalJavaxProviderKey
private final Key javaOptionalProviderKey
private Binder binder
private java.util.Set<Dependency<?>> dependencies
private java.util.Set<Dependency<?>> providerDependencies
private void addDirectTypeBinding(Binder binder)
public LinkedBindingBuilder<T> setDefault()
OptionalBinder
OptionalBinder.setBinding()
is called.
It is an error to call this method without also calling one of the to
methods on the returned binding builder.
setDefault
in class OptionalBinder<T>
public LinkedBindingBuilder<T> setBinding()
OptionalBinder
OptionalBinder.setDefault()
.
It is an error to call this method without also calling one of the to
methods on the returned binding builder.
setBinding
in class OptionalBinder<T>
public void configure(Binder binder)
Module
binder
.
Do not invoke this method directly to install submodules. Instead use
Binder.install(Module)
, which ensures that provider methods
are
discovered.
private void bindJava8Optional(Binder binder)
private Binding<?> getActualBinding()
private Binding<?> getDefaultBinding()
private boolean containsElement(Element element)
private boolean matchesJ8Keys(Key<?> elementKey)
private boolean matchesTypeKey(Element element, Key<?> elementKey)
private boolean isInitialized()
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object