Package com.google.inject.util
Class Modules
java.lang.Object
com.google.inject.util.Modules
Static utility methods for creating and working with instances of
Module.- Since:
- 2.0
- Author:
- jessewilson@google.com (Jesse Wilson)
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionstatic Modulecombine()Deprecated.this method call is effectively a no-op, just remove it.static ModuleDeprecated.there's no need to "combine" one module; just install it directly.static ModuleReturns a new module that installs all ofmodules.static ModuleReturns a new module that installs all ofmodules.static ModuleReturns a module that will configure the injector to disable circular proxies.override()Deprecated.there's no reason to useModules.override()without any arguments.Returns a builder that creates a module that overlays override modules over the given modules.Returns a builder that creates a module that overlays override modules over the given modules.static ModuleReturns a module that will configure the injector to require @on constructors.invalid reference
Injectstatic ModuleReturns a module that will configure the injector to require an exactly matching binding annotation.static ModuleReturns a module that will configure the injector to require explicit bindings.
-
Field Details
-
EMPTY_MODULE
-
-
Method Details
-
override
Returns a builder that creates a module that overlays override modules over the given modules. If a key is bound in both sets of modules, only the binding from the override modules is kept. If a singlePrivateModuleis supplied or all elements are from a singlePrivateBinder, then this will overwrite the private bindings. Otherwise, private bindings will not be overwritten unless they are exposed. This can be used to replace the bindings of a production module with test bindings:Module functionalTestModule = Modules.override(new ProductionModule()).with(new TestModule());Prefer to write smaller modules that can be reused and tested without overrides.
- Parameters:
modules- the modules whose bindings are open to be overridden
-
override
Deprecated.there's no reason to useModules.override()without any arguments. -
override
Returns a builder that creates a module that overlays override modules over the given modules. If a key is bound in both sets of modules, only the binding from the override modules is kept. If a singlePrivateModuleis supplied or all elements are from a singlePrivateBinder, then this will overwrite the private bindings. Otherwise, private bindings will not be overwritten unless they are exposed. This can be used to replace the bindings of a production module with test bindings:Module functionalTestModule = Modules.override(getProductionModules()).with(getTestModules());Prefer to write smaller modules that can be reused and tested without overrides.
- Parameters:
modules- the modules whose bindings are open to be overridden
-
combine
Returns a new module that installs all ofmodules.Although sometimes helpful, this method is rarely necessary. Most Guice APIs accept multiple arguments or (like
install()) can be called repeatedly. Where possible, external APIs that require a single module should similarly be adapted to permit multiple modules. -
combine
Deprecated.there's no need to "combine" one module; just install it directly. -
combine
Deprecated.this method call is effectively a no-op, just remove it. -
combine
Returns a new module that installs all ofmodules.Although sometimes helpful, this method is rarely necessary. Most Guice APIs accept multiple arguments or (like
install()) can be called repeatedly. Where possible, external APIs that require a single module should similarly be adapted to permit multiple modules. -
requireExplicitBindingsModule
Returns a module that will configure the injector to require explicit bindings.- Since:
- 4.2.3
-
requireAtInjectOnConstructorsModule
Returns a module that will configure the injector to require @on constructors.invalid reference
Inject- Since:
- 4.2.3
- See Also:
-
requireExactBindingAnnotationsModule
Returns a module that will configure the injector to require an exactly matching binding annotation.- Since:
- 4.2.3
- See Also:
-
disableCircularProxiesModule
Returns a module that will configure the injector to disable circular proxies.- Since:
- 4.2.3
-