Class Modules

org.elasticsearch.common.inject.util.Modules

public final class Modules extends
Static utility methods for creating and working with instances of Module.
Since:
2.0
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
    See the EDSL example at override().
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static Module
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static Module
    <? 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.
    <? extends Module> modules)
    Returns a builder that creates a module that overlays override modules over the given modules.
    override​(Module... modules)
    Returns a builder that creates a module that overlays override modules over the given modules.

    Methods inherited from class java.lang.

    , , , , , , , , , ,
  • Field Details

    • EMPTY_MODULE

      public static final Module EMPTY_MODULE
  • Method Details

    • override

      public static Modules.OverriddenModuleBuilder override(Module... modules)
      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. 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

      public static <? extends Module> modules)
      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. 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

      public static Module combine(Module... modules)
      Returns a new module that installs all of modules.
    • combine

      public static <? extends Module> modules)
      Returns a new module that installs all of modules.