public final class

ProviderLookup

extends Object
implements Element
java.lang.Object
   ↳ com.google.inject.spi.ProviderLookup<T>

Class Overview

A lookup of the provider for a type. Lookups are created explicitly in a module using getProvider() statements:

     Provider<PaymentService> paymentServiceProvider
         = getProvider(PaymentService.class);

Summary

Public Constructors
ProviderLookup(Object source, Key<T> key)
Public Methods
<T> T acceptVisitor(ElementVisitor<T> visitor)
Accepts an element visitor.
void applyTo(Binder binder)
Writes this module element to the given binder (optional operation).
Provider<T> getDelegate()
Returns the delegate provider, or null if it has not yet been initialized.
Key<T> getKey()
Provider<T> 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<T> delegate)
Sets the actual provider.
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.google.inject.spi.Element

Public Constructors

public ProviderLookup (Object source, Key<T> key)

Public Methods

public T acceptVisitor (ElementVisitor<T> visitor)

Accepts an element visitor. Invokes the visitor method specific to this element's type.

Parameters
visitor to call back on

public void applyTo (Binder binder)

Writes this module element to the given binder (optional operation).

Parameters
binder to apply configuration element to

public Provider<T> getDelegate ()

Returns the delegate provider, or 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 Key<T> getKey ()

public Provider<T> getProvider ()

Returns the looked up provider. The result is not valid until this lookup has been initialized, which usually happens when the injector is created. The provider will throw an IllegalStateException if you try to use it beforehand.

public Object getSource ()

Returns an arbitrary object containing information about the "place" where this element was configured. Used by Guice in the production of descriptive error messages.

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 void initializeDelegate (Provider<T> delegate)

Sets the actual provider.

Throws
IllegalStateException if the delegate is already set