public final class ProviderLookup<T> extends Objectimplements Element
getProvider() statements:
Provider<PaymentService> paymentServiceProvider
= getProvider(PaymentService.class);
| Constructor and Description |
|---|
ProviderLookup(Object
|
ProviderLookup(Object
|
| Modifier and Type | Method and Description |
|---|---|
<T> T |
acceptVisitor(ElementVisitor
Accepts an element visitor.
|
void |
applyTo(Binder
Writes this module element to the given binder (optional operation).
|
Provider |
getDelegate()
Returns the delegate provider, or
null if it has not yet been initialized.
|
Dependency |
getDependency()
|
Key |
getKey()
|
Provider |
getProvider()
Returns the looked up provider.
|
Object |
getSource()
Returns an arbitrary object containing information about the "place" where this element was configured.
|
void |
initializeDelegate(Provider
Sets the actual provider.
|
public ProviderLookup(Objectsource, Dependency <T> dependency)
public ObjectgetSource()
Element
Tools 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)
Element
acceptVisitor in interface
Element
visitor - to call back on
public void initializeDelegate(Provider<T> delegate)
IllegalStateException - if the delegate is already set
public void applyTo(Binderbinder)
Element
public 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.