public final class Modules
extends java.lang.Object
Module.| Modifier and Type | Class and Description |
|---|---|
private static class |
Modules.CombinedModule |
private static class |
Modules.EmptyModule |
private static class |
Modules.ModuleWriter |
static interface |
Modules.OverriddenModuleBuilder
See the EDSL example at
override(). |
(package private) static class |
Modules.OverrideModule |
private static class |
Modules.RealOverriddenModuleBuilder |
| Modifier and Type | Field and Description |
|---|---|
static Module |
EMPTY_MODULE |
| Modifier | Constructor and Description |
|---|---|
private |
Modules() |
| Modifier and Type | Method and Description |
|---|---|
static Module |
combine(java.lang.Iterable<? extends Module> modules)
Returns a new module that installs all of
modules. |
static Module |
combine(Module... modules)
Returns a new module that installs all of
modules. |
private static Module |
extractScanners(java.lang.Iterable<Element> elements) |
static Modules.OverriddenModuleBuilder |
override(java.lang.Iterable<? extends Module> modules)
Returns a builder that creates a module that overlays override modules over the given
modules.
|
static Modules.OverriddenModuleBuilder |
override(Module... modules)
Returns a builder that creates a module that overlays override modules over the given
modules.
|
public static final Module EMPTY_MODULE
public static Modules.OverriddenModuleBuilder override(Module... modules)
PrivateModule is supplied or all elements are from
a single PrivateBinder, 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.
modules - the modules whose bindings are open to be overriddenpublic static Modules.OverriddenModuleBuilder override(java.lang.Iterable<? extends Module> modules)
PrivateModule is supplied or all elements are from
a single PrivateBinder, 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.
modules - the modules whose bindings are open to be overriddenpublic static Module combine(Module... modules)
modules.public static Module combine(java.lang.Iterable<? extends Module> modules)
modules.