Package com.google.inject.internal
Class InternalFactoryToInitializableAdapter<T>
java.lang.Object
com.google.inject.internal.ProviderInternalFactory<T>
com.google.inject.internal.InternalFactoryToInitializableAdapter<T>
- All Implemented Interfaces:
InternalFactory<T>
Adapts
ProviderInstanceBinding
providers, ensuring circular proxies fail (or proxy)
properly.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Initializable
<? extends javax.inject.Provider<? extends T>> private final ProvisionListenerStackCallback
<T> Fields inherited from class com.google.inject.internal.ProviderInternalFactory
source
-
Constructor Summary
ConstructorsConstructorDescriptionInternalFactoryToInitializableAdapter
(Initializable<? extends javax.inject.Provider<? extends T>> initializable, Object source, ProvisionListenerStackCallback<T> provisionCallback) -
Method Summary
Modifier and TypeMethodDescriptionget
(InternalContext context, Dependency<?> dependency, boolean linked) Creates an object to be injected.protected T
provision
(javax.inject.Provider<? extends T> provider, Dependency<?> dependency, ConstructionContext<T> constructionContext) Provisions a new instance.toString()
Methods inherited from class com.google.inject.internal.ProviderInternalFactory
circularGet
-
Field Details
-
provisionCallback
-
initializable
-
-
Constructor Details
-
InternalFactoryToInitializableAdapter
public InternalFactoryToInitializableAdapter(Initializable<? extends javax.inject.Provider<? extends T>> initializable, Object source, ProvisionListenerStackCallback<T> provisionCallback)
-
-
Method Details
-
get
public T get(InternalContext context, Dependency<?> dependency, boolean linked) throws InternalProvisionException Description copied from interface:InternalFactory
Creates an object to be injected.- Parameters:
context
- of this injectionlinked
- true if getting as a result of a linked binding- Returns:
- instance that was created
- Throws:
InternalProvisionException
- if a value cannot be provided
-
provision
protected T provision(javax.inject.Provider<? extends T> provider, Dependency<?> dependency, ConstructionContext<T> constructionContext) throws InternalProvisionException Description copied from class:ProviderInternalFactory
Provisions a new instance. Subclasses should override this to catch exceptions invalid input: '&' rethrow as ErrorsExceptions.- Overrides:
provision
in classProviderInternalFactory<T>
- Throws:
InternalProvisionException
-
toString
-