Package org.elasticsearch.common.inject
Interface Module
- All Known Implementing Classes:
AbstractModule
,ActionModule
,ClusterModule
,GatewayModule
,IndicesModule
,MapBinder.RealMapBinder
,Multibinder.RealMultibinder
,PrivateModule
,ProviderMethodsModule
,SettingsModule
public interface Module
A module contributes configuration information, typically interface
bindings, which will be used to create an
Injector
. A Guice-based
application is ultimately composed of little more than a set of
Module
s and some bootstrapping code.
Your Module classes can use a more streamlined syntax by extending
AbstractModule
rather than implementing this interface directly.
In addition to the bindings configured via configure(org.elasticsearch.common.inject.Binder)
, bindings
will be created for all methods annotated with @Provides
.
Use scope and binding annotations on these methods to configure the
bindings.
-
Method Summary
-
Method Details
-
configure
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.
-