Package com.google.inject.internal
Class ProviderMethodsModule
- java.lang.Object
-
- com.google.inject.internal.ProviderMethodsModule
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
ProviderMethodsModule.Signature
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Object
delegate
private ModuleAnnotatedMethodScanner
scanner
private boolean
skipFastClassGeneration
private TypeLiteral<?>
typeLiteral
-
Constructor Summary
Constructors Modifier Constructor Description private
ProviderMethodsModule(java.lang.Object delegate, boolean skipFastClassGeneration, ModuleAnnotatedMethodScanner scanner)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
configure(Binder binder)
Contributes bindings and other configurations for this module tobinder
.private <T> ProviderMethod<T>
createProviderMethod(Binder binder, java.lang.reflect.Method method, java.lang.annotation.Annotation annotation)
boolean
equals(java.lang.Object o)
static Module
forModule(Module module)
Returns a module which creates bindings for provider methods from the given module.static Module
forModule(java.lang.Object module, ModuleAnnotatedMethodScanner scanner)
Returns a module which creates bindings methods in the module that match the scanner.static Module
forObject(java.lang.Object object)
Returns a module which creates bindings for provider methods from the given object.private static Module
forObject(java.lang.Object object, boolean skipFastClassGeneration, ModuleAnnotatedMethodScanner scanner)
private java.lang.annotation.Annotation
getAnnotation(Binder binder, java.lang.reflect.Method method)
Returns the annotation that is claimed by the scanner, or null if there is none.java.lang.Object
getDelegateModule()
(package private) <T> Key<T>
getKey(Errors errors, TypeLiteral<T> type, java.lang.reflect.Member member, java.lang.annotation.Annotation[] annotations)
java.util.List<ProviderMethod<?>>
getProviderMethods(Binder binder)
int
hashCode()
private static boolean
overrides(java.lang.reflect.Method a, java.lang.reflect.Method b)
Returns true if a overrides b, assumes that the signatures match
-
-
-
Field Detail
-
delegate
private final java.lang.Object delegate
-
typeLiteral
private final TypeLiteral<?> typeLiteral
-
skipFastClassGeneration
private final boolean skipFastClassGeneration
-
scanner
private final ModuleAnnotatedMethodScanner scanner
-
-
Constructor Detail
-
ProviderMethodsModule
private ProviderMethodsModule(java.lang.Object delegate, boolean skipFastClassGeneration, ModuleAnnotatedMethodScanner scanner)
-
-
Method Detail
-
forModule
public static Module forModule(Module module)
Returns a module which creates bindings for provider methods from the given module.
-
forModule
public static Module forModule(java.lang.Object module, ModuleAnnotatedMethodScanner scanner)
Returns a module which creates bindings methods in the module that match the scanner.
-
forObject
public static Module forObject(java.lang.Object object)
Returns a module which creates bindings for provider methods from the given object. This is useful notably for GINThis will skip bytecode generation for provider methods, since it is assumed that callers are only interested in Module metadata.
-
forObject
private static Module forObject(java.lang.Object object, boolean skipFastClassGeneration, ModuleAnnotatedMethodScanner scanner)
-
getDelegateModule
public java.lang.Object getDelegateModule()
-
configure
public void configure(Binder binder)
Description copied from interface:Module
Contributes bindings and other configurations for this module tobinder
.Do not invoke this method directly to install submodules. Instead use
Binder.install(Module)
, which ensures thatprovider methods
are discovered.
-
getProviderMethods
public java.util.List<ProviderMethod<?>> getProviderMethods(Binder binder)
-
getAnnotation
private java.lang.annotation.Annotation getAnnotation(Binder binder, java.lang.reflect.Method method)
Returns the annotation that is claimed by the scanner, or null if there is none.
-
overrides
private static boolean overrides(java.lang.reflect.Method a, java.lang.reflect.Method b)
Returns true if a overrides b, assumes that the signatures match
-
createProviderMethod
private <T> ProviderMethod<T> createProviderMethod(Binder binder, java.lang.reflect.Method method, java.lang.annotation.Annotation annotation)
-
getKey
<T> Key<T> getKey(Errors errors, TypeLiteral<T> type, java.lang.reflect.Member member, java.lang.annotation.Annotation[] annotations)
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-