Package com.google.inject.internal
Class ProviderInstanceBindingImpl<T>
- java.lang.Object
-
- com.google.inject.internal.BindingImpl<T>
-
- com.google.inject.internal.ProviderInstanceBindingImpl<T>
-
- All Implemented Interfaces:
Binding<T>,Element,HasDependencies,ProviderInstanceBinding<T>
- Direct Known Subclasses:
InternalProviderInstanceBindingImpl
class ProviderInstanceBindingImpl<T> extends BindingImpl<T> implements ProviderInstanceBinding<T>
-
-
Field Summary
Fields Modifier and Type Field Description (package private) com.google.common.collect.ImmutableSet<InjectionPoint>injectionPoints(package private) javax.inject.Provider<? extends T>providerInstance
-
Constructor Summary
Constructors Constructor Description ProviderInstanceBindingImpl(InjectorImpl injector, Key<T> key, java.lang.Object source, InternalFactory<? extends T> internalFactory, Scoping scoping, javax.inject.Provider<? extends T> providerInstance, java.util.Set<InjectionPoint> injectionPoints)ProviderInstanceBindingImpl(java.lang.Object source, Key<T> key, Scoping scoping, java.util.Set<InjectionPoint> injectionPoints, javax.inject.Provider<? extends T> providerInstance)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <V> VacceptTargetVisitor(BindingTargetVisitor<? super T,V> visitor)Accepts a target visitor.voidapplyTo(Binder binder)Writes this module element to the given binder (optional operation).booleanequals(java.lang.Object obj)java.util.Set<Dependency<?>>getDependencies()Returns the known dependencies for this type.java.util.Set<InjectionPoint>getInjectionPoints()Returns the field and method injection points of the provider, injected at injector-creation time only.Provider<? extends T>getProviderInstance()If the user supplied a JSR330 binding, then this will wrap that one.javax.inject.Provider<? extends T>getUserSuppliedProvider()Returns the user-supplied, unscoped provider.inthashCode()java.lang.StringtoString()BindingImpl<T>withKey(Key<T> key)BindingImpl<T>withScoping(Scoping scoping)-
Methods inherited from class com.google.inject.internal.BindingImpl
acceptScopingVisitor, acceptVisitor, getInjector, getInternalFactory, getKey, getProvider, getScoping, getSource, isConstant
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.google.inject.Binding
acceptScopingVisitor, getKey, getProvider
-
Methods inherited from interface com.google.inject.spi.Element
acceptVisitor, getSource
-
-
-
-
Field Detail
-
providerInstance
final javax.inject.Provider<? extends T> providerInstance
-
injectionPoints
final com.google.common.collect.ImmutableSet<InjectionPoint> injectionPoints
-
-
Constructor Detail
-
ProviderInstanceBindingImpl
public ProviderInstanceBindingImpl(InjectorImpl injector, Key<T> key, java.lang.Object source, InternalFactory<? extends T> internalFactory, Scoping scoping, javax.inject.Provider<? extends T> providerInstance, java.util.Set<InjectionPoint> injectionPoints)
-
ProviderInstanceBindingImpl
public ProviderInstanceBindingImpl(java.lang.Object source, Key<T> key, Scoping scoping, java.util.Set<InjectionPoint> injectionPoints, javax.inject.Provider<? extends T> providerInstance)
-
-
Method Detail
-
acceptTargetVisitor
public <V> V acceptTargetVisitor(BindingTargetVisitor<? super T,V> visitor)
Description copied from interface:BindingAccepts a target visitor. Invokes the visitor method specific to this binding's target.- Specified by:
acceptTargetVisitorin interfaceBinding<T>- Parameters:
visitor- to call back on
-
getProviderInstance
public Provider<? extends T> getProviderInstance()
Description copied from interface:ProviderInstanceBindingIf the user supplied a JSR330 binding, then this will wrap that one. To always return the user-supplied provider, useProviderInstanceBinding.getUserSuppliedProvider().- Specified by:
getProviderInstancein interfaceProviderInstanceBinding<T>
-
getUserSuppliedProvider
public javax.inject.Provider<? extends T> getUserSuppliedProvider()
Description copied from interface:ProviderInstanceBindingReturns the user-supplied, unscoped provider.- Specified by:
getUserSuppliedProviderin interfaceProviderInstanceBinding<T>
-
getInjectionPoints
public java.util.Set<InjectionPoint> getInjectionPoints()
Description copied from interface:ProviderInstanceBindingReturns the field and method injection points of the provider, injected at injector-creation time only.- Specified by:
getInjectionPointsin interfaceProviderInstanceBinding<T>- Returns:
- a possibly empty set
-
getDependencies
public java.util.Set<Dependency<?>> getDependencies()
Description copied from interface:HasDependenciesReturns the known dependencies for this type. If this has dependencies whose values are not known statically, a dependency for theInjectorwill be included in the returned set.- Specified by:
getDependenciesin interfaceHasDependencies- Returns:
- a possibly empty set
-
withScoping
public BindingImpl<T> withScoping(Scoping scoping)
- Overrides:
withScopingin classBindingImpl<T>
-
withKey
public BindingImpl<T> withKey(Key<T> key)
- Overrides:
withKeyin classBindingImpl<T>
-
applyTo
public void applyTo(Binder binder)
Description copied from interface:ElementWrites this module element to the given binder (optional operation).
-
toString
public java.lang.String toString()
- Overrides:
toStringin classBindingImpl<T>
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-