final class Initializer
extends java.lang.Object
Initializable
, which attempts to perform injection before use.Modifier and Type | Class and Description |
---|---|
private static class |
Initializer.InjectableReference<T> |
private static class |
Initializer.InjectableReferenceState |
Modifier and Type | Field and Description |
---|---|
private CycleDetectingLock.CycleDetectingLockFactory<java.lang.Class<?>> |
cycleDetectingLockFactory
Allows us to detect circular dependencies.
|
private java.util.IdentityHashMap<java.lang.Object,Initializer.InjectableReference<?>> |
initializablesCache
Map that guarantees that no instance would get two references.
|
private java.util.List<Initializer.InjectableReference<?>> |
pendingInjections
Instances that need injection during injector creation to a source that registered them.
|
private boolean |
validationStarted
Is set to true once
validateOustandingInjections(com.google.inject.internal.Errors) is called. |
Constructor and Description |
---|
Initializer() |
Modifier and Type | Method and Description |
---|---|
(package private) void |
injectAll(Errors errors)
Performs creation-time injections on all objects that require it.
|
(package private) <T> Initializable<T> |
requestInjection(InjectorImpl injector,
T instance,
Binding<T> binding,
java.lang.Object source,
java.util.Set<InjectionPoint> injectionPoints)
Registers an instance for member injection when that step is performed.
|
(package private) void |
validateOustandingInjections(Errors errors)
Prepares member injectors for all injected instances.
|
private volatile boolean validationStarted
validateOustandingInjections(com.google.inject.internal.Errors)
is called.private final CycleDetectingLock.CycleDetectingLockFactory<java.lang.Class<?>> cycleDetectingLockFactory
private final java.util.List<Initializer.InjectableReference<?>> pendingInjections
validateOustandingInjections(com.google.inject.internal.Errors)
.
Cleared up in injectAll(com.google.inject.internal.Errors)
.private final java.util.IdentityHashMap<java.lang.Object,Initializer.InjectableReference<?>> initializablesCache
validateOustandingInjections(com.google.inject.internal.Errors)
. Cleared up in
validateOustandingInjections(com.google.inject.internal.Errors)
.<T> Initializable<T> requestInjection(InjectorImpl injector, T instance, Binding<T> binding, java.lang.Object source, java.util.Set<InjectionPoint> injectionPoints)
instance
- an instance that optionally has members to be injected (each annotated withbinding
- the binding that caused this initializable to be created, if it exists.source
- the source location that this injection was requestedvoid validateOustandingInjections(Errors errors)
void injectAll(Errors errors)