Class ProviderLookup<T>
java.lang.Object
org.elasticsearch.common.inject.spi.ProviderLookup<T>
- All Implemented Interfaces:
Element
A lookup of the provider for a type. Lookups are created explicitly in a module using
getProvider()
statements:
Provider<PaymentService> paymentServiceProvider = getProvider(PaymentService.class);
- Since:
- 2.0
-
Nested Class Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<T> T
acceptVisitor(ElementVisitor<T> visitor)
Accepts an element visitor.void
Writes this module element to the given binder (optional operation).Returns the delegate provider, ornull
if it has not yet been initialized.getKey()
Returns the looked up provider.Returns an arbitrary object containing information about the "place" where this element was configured.void
initializeDelegate(Provider<T> delegate)
Sets the actual provider.
-
Constructor Details
-
ProviderLookup
-
-
Method Details
-
getSource
Description copied from interface:Element
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 calltoString()
on the source object if the type is unfamiliar. -
getKey
-
acceptVisitor
Description copied from interface:Element
Accepts an element visitor. Invokes the visitor method specific to this element's type.- Specified by:
acceptVisitor
in interfaceElement
- Parameters:
visitor
- to call back on
-
initializeDelegate
Sets the actual provider.- Throws:
IllegalStateException
- if the delegate is already set
-
applyTo
Description copied from interface:Element
Writes this module element to the given binder (optional operation). -
getDelegate
Returns the delegate provider, ornull
if it has not yet been initialized. The delegate will be initialized when this element is processed, or otherwise used to create an injector. -
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 anIllegalStateException
if you try to use it beforehand.
-