Package com.google.inject
Class AbstractModule
- java.lang.Object
-
- com.google.inject.AbstractModule
-
- All Implemented Interfaces:
Module
- Direct Known Subclasses:
BoundFieldModule.WithPermits,GraphvizModule,PersistModule,ServletModule,Struts2GuicePluginModule
public abstract class AbstractModule extends Object implements Module
AbstractModule is a helper class used to add bindings to the Guice injector.Simply extend this class, then you can add bindings by either defining @Provides methods (see https://github.com/google/guice/wiki/ProvidesMethods) or implementing
configure(), and calling the inherited methods which mirror those found inBinder. For example:public class MyModule extends AbstractModule { protected void configure() { bind(Service.class).to(ServiceImpl.class).in(Singleton.class); bind(CreditCardPaymentService.class); bind(PaymentService.class).to(CreditCardPaymentService.class); bindConstant().annotatedWith(Names.named("port")).to(8080); } }
-
-
Constructor Summary
Constructors Constructor Description AbstractModule()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddError(Message message)protected voidaddError(String message, Object... arguments)protected voidaddError(Throwable t)protected <T> LinkedBindingBuilder<T>bind(Key<T> key)protected <T> AnnotatedBindingBuilder<T>bind(TypeLiteral<T> typeLiteral)protected <T> AnnotatedBindingBuilder<T>bind(Class<T> clazz)protected AnnotatedConstantBindingBuilderbindConstant()protected Binderbinder()Gets direct access to the underlyingBinder.protected voidbindInterceptor(Matcher<? super Class<?>> classMatcher, Matcher<? super Method> methodMatcher, MethodInterceptor... interceptors)protected voidbindListener(Matcher<? super Binding<?>> bindingMatcher, ProvisionListener... listener)protected voidbindListener(Matcher<? super TypeLiteral<?>> typeMatcher, TypeListener listener)protected voidbindScope(Class<? extends Annotation> scopeAnnotation, Scope scope)protected voidconfigure()Configures aBindervia the exposed methods.voidconfigure(Binder builder)Contributes bindings and other configurations for this module tobinder.protected voidconvertToTypes(Matcher<? super TypeLiteral<?>> typeMatcher, TypeConverter converter)protected StagecurrentStage()protected <T> MembersInjector<T>getMembersInjector(TypeLiteral<T> type)protected <T> MembersInjector<T>getMembersInjector(Class<T> type)protected <T> Provider<T>getProvider(Key<T> key)protected <T> Provider<T>getProvider(Class<T> type)protected voidinstall(Module module)protected voidrequestInjection(Object instance)protected voidrequestStaticInjection(Class<?>... types)protected voidrequireBinding(Key<?> key)Adds a dependency from this module tokey.protected voidrequireBinding(Class<?> type)Adds a dependency from this module totype.
-
-
-
Method Detail
-
configure
public final void configure(Binder builder)
Description copied from interface:ModuleContributes 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 methodsare discovered.
-
configure
protected void configure()
Configures aBindervia the exposed methods.
-
binder
protected Binder binder()
Gets direct access to the underlyingBinder.
-
bindScope
protected void bindScope(Class<? extends Annotation> scopeAnnotation, Scope scope)
- See Also:
Binder.bindScope(Class, Scope)
-
bind
protected <T> LinkedBindingBuilder<T> bind(Key<T> key)
- See Also:
Binder.bind(Key)
-
bind
protected <T> AnnotatedBindingBuilder<T> bind(TypeLiteral<T> typeLiteral)
- See Also:
Binder.bind(TypeLiteral)
-
bind
protected <T> AnnotatedBindingBuilder<T> bind(Class<T> clazz)
- See Also:
Binder.bind(Class)
-
bindConstant
protected AnnotatedConstantBindingBuilder bindConstant()
- See Also:
Binder.bindConstant()
-
install
protected void install(Module module)
- See Also:
Binder.install(Module)
-
addError
protected void addError(String message, Object... arguments)
- See Also:
Binder.addError(String, Object[])
-
addError
protected void addError(Throwable t)
- See Also:
Binder.addError(Throwable)
-
addError
protected void addError(Message message)
- Since:
- 2.0
- See Also:
Binder.addError(Message)
-
requestInjection
protected void requestInjection(Object instance)
- Since:
- 2.0
- See Also:
Binder.requestInjection(Object)
-
requestStaticInjection
protected void requestStaticInjection(Class<?>... types)
- See Also:
Binder.requestStaticInjection(Class[])
-
bindInterceptor
protected void bindInterceptor(Matcher<? super Class<?>> classMatcher, Matcher<? super Method> methodMatcher, MethodInterceptor... interceptors)
-
requireBinding
protected void requireBinding(Key<?> key)
Adds a dependency from this module tokey. When the injector is created, Guice will report an error ifkeycannot be injected. Note that this requirement may be satisfied by implicit binding, such as a public no-arguments constructor.- Since:
- 2.0
-
requireBinding
protected void requireBinding(Class<?> type)
Adds a dependency from this module totype. When the injector is created, Guice will report an error iftypecannot be injected. Note that this requirement may be satisfied by implicit binding, such as a public no-arguments constructor.- Since:
- 2.0
-
getProvider
protected <T> Provider<T> getProvider(Key<T> key)
- Since:
- 2.0
- See Also:
Binder.getProvider(Key)
-
getProvider
protected <T> Provider<T> getProvider(Class<T> type)
- Since:
- 2.0
- See Also:
Binder.getProvider(Class)
-
convertToTypes
protected void convertToTypes(Matcher<? super TypeLiteral<?>> typeMatcher, TypeConverter converter)
-
currentStage
protected Stage currentStage()
- Since:
- 2.0
- See Also:
Binder.currentStage()
-
getMembersInjector
protected <T> MembersInjector<T> getMembersInjector(Class<T> type)
- Since:
- 2.0
- See Also:
Binder.getMembersInjector(Class)
-
getMembersInjector
protected <T> MembersInjector<T> getMembersInjector(TypeLiteral<T> type)
- Since:
- 2.0
- See Also:
Binder.getMembersInjector(TypeLiteral)
-
bindListener
protected void bindListener(Matcher<? super TypeLiteral<?>> typeMatcher, TypeListener listener)
-
bindListener
protected void bindListener(Matcher<? super Binding<?>> bindingMatcher, ProvisionListener... listener)
- Since:
- 4.0
- See Also:
Binder.bindListener(Matcher, ProvisionListener...)
-
-