Top Description Fields Constructors Methods
com.google.inject.internal

pack-priv Class InjectorBindingData

extends Object
Class Inheritance
Imports
com.google.common.collect.ArrayListMultimap, .ImmutableList, .ImmutableMap, .ListMultimap, .Lists, .Maps, .Sets, com.google.inject.Binding, .Key, .Scope, .TypeLiteral, com.google.inject.spi.InjectionRequest, .InterceptorBinding, .MembersInjectorLookup, .ModuleAnnotatedMethodScannerBinding, .ProviderLookup, .ProvisionListenerBinding, .ScopeBinding, .StaticInjectionRequest, .TypeConverterBinding, .TypeListenerBinding, java.lang.annotation.Annotation, java.util.Collection, .Collections, .List, .Map, .Optional, .Set

A container that stores an injector's binding data. This excludes JIT binding data, which is stored in InjectorJitBindingData.
Author
[email protected] (Jesse Wilson)

Field Summary

Modifier and TypeField and Description
private final List<TypeConverterBinding>
private final Map<Key<?>, Binding<?>>
private final Map<Key<?>, Binding<?>>
private final ListMultimap<TypeLiteral<?>, Binding<?>>
private final Set<InjectionRequest<?>>
private final List<InterceptorBinding>
private final Set<MembersInjectorLookup<?>>
private final Optional<InjectorBindingData>
private final Set<ProviderLookup<?>>
private final List<ProvisionListenerBinding>
private final List<ModuleAnnotatedMethodScannerBinding>
private final Map<Class<? extends Annotation>, ScopeBinding>
private final Set<StaticInjectionRequest>
private final List<TypeListenerBinding>

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public void
addConverter(TypeConverterBinding typeConverterBinding)

public void
public void
public void
public void
public TypeConverterBinding
getConverter(String stringValue, TypeLiteral<?> type, Errors errors, Object source)

public Iterable<TypeConverterBinding>
public <T> BindingImpl<T>
public Map<Key<?>, Binding<?>>
public ListMultimap<TypeLiteral<?>, Binding<?>>
public Set<InjectionRequest<?>>
public ImmutableList<InterceptorBinding>
public ImmutableList<InterceptorBinding>
public Set<MembersInjectorLookup<?>>
public Set<ProviderLookup<?>>
public ImmutableList<ProvisionListenerBinding>
public ImmutableList<ProvisionListenerBinding>
public ImmutableList<ModuleAnnotatedMethodScannerBinding>
public ImmutableList<ModuleAnnotatedMethodScannerBinding>
public ScopeBinding
getScopeBinding(Class<? extends Annotation> annotationType)

public Collection<ScopeBinding>
public Map<Class<? extends Annotation>, Scope>
public Set<StaticInjectionRequest>
public ImmutableList<TypeListenerBinding>
public ImmutableList<TypeListenerBinding>
pack-priv void
indexBindingsByType()

Once the injector's explicit bindings are finalized, this method is called to index all explicit bindings by their return type.

public Optional<InjectorBindingData>
public void
putBinding(Key<?> key, BindingImpl<?> binding)

public void
public void
public void
public void
putScopeBinding(Class<? extends Annotation> annotationType, ScopeBinding scope)

public void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

convertersback to summary
private final List<TypeConverterBinding> converters
explicitBindingsback to summary
private final Map<Key<?>, Binding<?>> explicitBindings
explicitBindingsMutableback to summary
private final Map<Key<?>, Binding<?>> explicitBindingsMutable
indexedExplicitBindingsback to summary
private final ListMultimap<TypeLiteral<?>, Binding<?>> indexedExplicitBindings
injectionRequestsback to summary
private final Set<InjectionRequest<?>> injectionRequests
interceptorBindingsback to summary
private final List<InterceptorBinding> interceptorBindings
membersInjectorLookupsback to summary
private final Set<MembersInjectorLookup<?>> membersInjectorLookups
parentback to summary
private final Optional<InjectorBindingData> parent
providerLookupsback to summary
private final Set<ProviderLookup<?>> providerLookups
provisionListenerBindingsback to summary
private final List<ProvisionListenerBinding> provisionListenerBindings
scannerBindingsback to summary
private final List<ModuleAnnotatedMethodScannerBinding> scannerBindings
scopesback to summary
private final Map<Class<? extends Annotation>, ScopeBinding> scopes
staticInjectionRequestsback to summary
private final Set<StaticInjectionRequest> staticInjectionRequests
typeListenerBindingsback to summary
private final List<TypeListenerBinding> typeListenerBindings

Constructor Detail

InjectorBindingDataback to summary
pack-priv InjectorBindingData(Optional<InjectorBindingData> parent)

Method Detail

addConverterback to summary
public void addConverter(TypeConverterBinding typeConverterBinding)
addInterceptorBindingback to summary
public void addInterceptorBinding(InterceptorBinding interceptorBinding)
addProvisionListenerback to summary
public void addProvisionListener(ProvisionListenerBinding listenerBinding)
addScannerback to summary
public void addScanner(ModuleAnnotatedMethodScannerBinding scanner)
addTypeListenerback to summary
public void addTypeListener(TypeListenerBinding listenerBinding)
getConverterback to summary
public TypeConverterBinding getConverter(String stringValue, TypeLiteral<?> type, Errors errors, Object source)
getConvertersThisLevelback to summary
public Iterable<TypeConverterBinding> getConvertersThisLevel()
getExplicitBindingback to summary
public <T> BindingImpl<T> getExplicitBinding(Key<T> key)
Annotations
@SuppressWarnings:unchecked
getExplicitBindingsThisLevelback to summary
public Map<Key<?>, Binding<?>> getExplicitBindingsThisLevel()
getIndexedExplicitBindingsback to summary
public ListMultimap<TypeLiteral<?>, Binding<?>> getIndexedExplicitBindings()
getInjectionRequestsThisLevelback to summary
public Set<InjectionRequest<?>> getInjectionRequestsThisLevel()
getInterceptorBindingsback to summary
public ImmutableList<InterceptorBinding> getInterceptorBindings()
getInterceptorBindingsThisLevelback to summary
public ImmutableList<InterceptorBinding> getInterceptorBindingsThisLevel()
getMembersInjectorLookupsThisLevelback to summary
public Set<MembersInjectorLookup<?>> getMembersInjectorLookupsThisLevel()
getProviderLookupsThisLevelback to summary
public Set<ProviderLookup<?>> getProviderLookupsThisLevel()
getProvisionListenerBindingsback to summary
public ImmutableList<ProvisionListenerBinding> getProvisionListenerBindings()
getProvisionListenerBindingsThisLevelback to summary
public ImmutableList<ProvisionListenerBinding> getProvisionListenerBindingsThisLevel()
getScannerBindingsback to summary
public ImmutableList<ModuleAnnotatedMethodScannerBinding> getScannerBindings()
getScannerBindingsThisLevelback to summary
public ImmutableList<ModuleAnnotatedMethodScannerBinding> getScannerBindingsThisLevel()
getScopeBindingback to summary
public ScopeBinding getScopeBinding(Class<? extends Annotation> annotationType)
getScopeBindingsThisLevelback to summary
public Collection<ScopeBinding> getScopeBindingsThisLevel()
getScopesback to summary
public Map<Class<? extends Annotation>, Scope> getScopes()
getStaticInjectionRequestsThisLevelback to summary
public Set<StaticInjectionRequest> getStaticInjectionRequestsThisLevel()
getTypeListenerBindingsback to summary
public ImmutableList<TypeListenerBinding> getTypeListenerBindings()
getTypeListenerBindingsThisLevelback to summary
public ImmutableList<TypeListenerBinding> getTypeListenerBindingsThisLevel()
indexBindingsByTypeback to summary
pack-priv void indexBindingsByType()

Once the injector's explicit bindings are finalized, this method is called to index all explicit bindings by their return type.

parentback to summary
public Optional<InjectorBindingData> parent()
putBindingback to summary
public void putBinding(Key<?> key, BindingImpl<?> binding)
putInjectionRequestback to summary
public void putInjectionRequest(InjectionRequest<?> injectionRequest)
putMembersInjectorLookupback to summary
public void putMembersInjectorLookup(MembersInjectorLookup<?> membersInjectorLookup)
putProviderLookupback to summary
public void putProviderLookup(ProviderLookup<?> lookup)
putScopeBindingback to summary
public void putScopeBinding(Class<? extends Annotation> annotationType, ScopeBinding scope)
putStaticInjectionRequestback to summary
public void putStaticInjectionRequest(StaticInjectionRequest staticInjectionRequest)