Interface Module

All Superinterfaces:
AvajeModule, InjectExtension
All Known Subinterfaces:
Module.Custom

@Deprecated(forRemoval=true) public interface Module extends AvajeModule
Deprecated, for removal: This API element is subject to removal in a future version.
migrate to AvajeModule
A Module that can be included in BeanScope.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static interface 
    Deprecated, for removal: This API element is subject to removal in a future version.
    Marker for custom scoped modules.
  • Field Summary

    Fields inherited from interface io.avaje.inject.spi.AvajeModule

    EMPTY_CLASSES
  • Method Summary

    Modifier and Type
    Method
    Description
    default Class<?>[]
    Deprecated, for removal: This API element is subject to removal in a future version.
    Return the classes that this module provides that we allow other modules to auto depend on.
    default Class<?>[]
    Deprecated, for removal: This API element is subject to removal in a future version.
    Return the aspects that this module provides.
    default Class<?>[]
    Deprecated, for removal: This API element is subject to removal in a future version.
    These are the classes that this module requires for wiring that are provided by other external modules (that are in the classpath at compile time).
    default Class<?>[]
    Deprecated, for removal: This API element is subject to removal in a future version.
    These are the apects that this module requires whose implementations are provided by other external modules (that are in the classpath at compile time).
    void
    build(Builder builder)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Build all the beans.
    Class<?>[]
    Deprecated, for removal: This API element is subject to removal in a future version.
    Return public classes of the beans that would be registered by this module.
    default Class<?>[]
    Deprecated, for removal: This API element is subject to removal in a future version.
    Return the set of types this module explicitly provides to other modules.
    default Class<?>[]
    Deprecated, for removal: This API element is subject to removal in a future version.
    Return the types this module needs to be provided externally or via other modules.
    default Class<?>[]
    Deprecated, for removal: This API element is subject to removal in a future version.
    Return the packages this module needs to be provided via other modules.
  • Method Details

    • provides

      default Class<?>[] provides()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Return the set of types this module explicitly provides to other modules.
      Specified by:
      provides in interface AvajeModule
    • requires

      default Class<?>[] requires()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Return the types this module needs to be provided externally or via other modules.
      Specified by:
      requires in interface AvajeModule
    • requiresPackages

      default Class<?>[] requiresPackages()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Return the packages this module needs to be provided via other modules.
      Specified by:
      requiresPackages in interface AvajeModule
    • autoProvides

      default Class<?>[] autoProvides()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Return the classes that this module provides that we allow other modules to auto depend on.

      This is a convenience when using multiple modules that is otherwise controlled manually by explicitly using InjectModule.provides().

      Specified by:
      autoProvides in interface AvajeModule
    • autoProvidesAspects

      default Class<?>[] autoProvidesAspects()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Return the aspects that this module provides.

      This is a convenience when using multiple modules that we otherwise manually specify via InjectModule.provides().

      Specified by:
      autoProvidesAspects in interface AvajeModule
    • autoRequires

      default Class<?>[] autoRequires()
      Deprecated, for removal: This API element is subject to removal in a future version.
      These are the classes that this module requires for wiring that are provided by other external modules (that are in the classpath at compile time).

      This is a convenience when using multiple modules that is otherwise controlled manually by explicitly using InjectModule.requires() or InjectModule.requiresPackages().

      Specified by:
      autoRequires in interface AvajeModule
    • autoRequiresAspects

      default Class<?>[] autoRequiresAspects()
      Deprecated, for removal: This API element is subject to removal in a future version.
      These are the apects that this module requires whose implementations are provided by other external modules (that are in the classpath at compile time).
      Specified by:
      autoRequiresAspects in interface AvajeModule
    • classes

      Class<?>[] classes()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Return public classes of the beans that would be registered by this module.

      This method allows code to use reflection to inspect the modules classes before the module is wired. This method is not required for DI wiring.

      Specified by:
      classes in interface AvajeModule
    • build

      void build(Builder builder)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Build all the beans.
      Specified by:
      build in interface AvajeModule