Package com.google.inject.internal
Class Initializer.InjectableReference<T>
- java.lang.Object
-
- com.google.inject.internal.Initializer.InjectableReference<T>
-
- All Implemented Interfaces:
Initializable<T>
- Enclosing class:
- Initializer
private static class Initializer.InjectableReference<T> extends java.lang.Object implements Initializable<T>
-
-
Field Summary
Fields Modifier and Type Field Description private InjectorImpl
injector
private T
instance
private Key<T>
key
private CycleDetectingLock<?>
lock
private MembersInjectorImpl<T>
membersInjector
private ProvisionListenerStackCallback<T>
provisionCallback
private java.lang.Object
source
private Initializer.InjectableReferenceState
state
-
Constructor Summary
Constructors Constructor Description InjectableReference(InjectorImpl injector, T instance, Key<T> key, ProvisionListenerStackCallback<T> provisionCallback, java.lang.Object source, CycleDetectingLock<?> lock)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description T
get()
Reentrant.java.lang.String
toString()
void
validate(Errors errors)
-
-
-
Field Detail
-
state
private volatile Initializer.InjectableReferenceState state
-
membersInjector
private volatile MembersInjectorImpl<T> membersInjector
-
injector
private final InjectorImpl injector
-
instance
private final T instance
-
source
private final java.lang.Object source
-
provisionCallback
private final ProvisionListenerStackCallback<T> provisionCallback
-
lock
private final CycleDetectingLock<?> lock
-
-
Constructor Detail
-
InjectableReference
public InjectableReference(InjectorImpl injector, T instance, Key<T> key, ProvisionListenerStackCallback<T> provisionCallback, java.lang.Object source, CycleDetectingLock<?> lock)
-
-
Method Detail
-
validate
public void validate(Errors errors) throws ErrorsException
- Throws:
ErrorsException
-
get
public T get() throws InternalProvisionException
Reentrant. Ifinstance
was registered for injection at injector-creation time, this method will ensure that all its members have been injected before returning.- Specified by:
get
in interfaceInitializable<T>
- Throws:
InternalProvisionException
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-