public final class ProviderLookup<T> extends java.lang.Object implements Element
getProvider() statements:
Provider<PaymentService> paymentServiceProvider
= getProvider(PaymentService.class);| Constructor and Description |
|---|
ProviderLookup(java.lang.Object source,
Dependency<T> dependency) |
ProviderLookup(java.lang.Object source,
Key<T> key) |
| Modifier and Type | Method and Description |
|---|---|
<T> T |
acceptVisitor(ElementVisitor<T> visitor)
Accepts an element visitor.
|
void |
applyTo(Binder binder)
Writes this module element to the given binder (optional operation).
|
boolean |
equals(java.lang.Object obj) |
Provider<T> |
getDelegate()
Returns the delegate provider, or
null if it has not yet been initialized. |
Dependency<T> |
getDependency() |
Key<T> |
getKey() |
Provider<T> |
getProvider()
Returns the looked up provider.
|
java.lang.Object |
getSource()
Returns an arbitrary object containing information about the "place" where this element was
configured.
|
int |
hashCode() |
void |
initializeDelegate(Provider<T> delegate)
Sets the actual provider.
|
java.lang.String |
toString() |
public ProviderLookup(java.lang.Object source,
Dependency<T> dependency)
public java.lang.Object getSource()
ElementTools might specially handle types they know about; StackTraceElement is a good
example. Tools should simply call toString() on the source object if the type is
unfamiliar.
public Dependency<T> getDependency()
public <T> T acceptVisitor(ElementVisitor<T> visitor)
ElementacceptVisitor in interface Elementvisitor - to call back onpublic void initializeDelegate(Provider<T> delegate)
java.lang.IllegalStateException - if the delegate is already setpublic void applyTo(Binder binder)
Elementpublic Provider<T> getDelegate()
null if it has not yet been initialized. The delegate
will be initialized when this element is processed, or otherwise used to create an injector.public Provider<T> getProvider()
IllegalStateException if you try to use it beforehand.public java.lang.String toString()
toString in class java.lang.Objectpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Object