com.google.inject.util

Class Modules



  • public final class Modules
    extends Object
    Static utility methods for creating and working with instances of Module.
    Since:
    2.0
    Author:
    jessewilson@google.com (Jesse Wilson)
    • Field Detail

      • EMPTY_MODULE

        public static final Module EMPTY_MODULE
    • Method Detail

      • 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. If a single 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.

        Parameters:
        modules - the modules whose bindings are open to be overridden
      • override

        public static Modules.OverriddenModuleBuilder override(Iterable<? 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. If a single 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.

        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 Module combine(Iterable<? extends Module> modules)
        Returns a new module that installs all of modules.

Copyright © 2006–2018 Google, Inc.. All rights reserved.