Annotation Interface ProductionSubcomponent


@Retention(RUNTIME) @Target(TYPE) @Documented public @interface ProductionSubcomponent
A subcomponent that inherits the bindings from a parent Component, Subcomponent, ProductionComponent, or ProductionSubcomponent. The details of how to associate a subcomponent with a parent are described in the documentation for Component.

The executor for a production subcomponent is supplied by binding @Production Executor, similar to ProductionComponent. Note that this binding may be in an ancestor component.

Since:
2.1
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static @interface 
    A builder for a production subcomponent.
    static @interface 
    A factory for a production subcomponent.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Class<?>[]
    A list of classes annotated with Module or ProducerModule whose bindings are used to generate the subcomponent implementation.
  • Element Details

    • modules

      Class<?>[] modules
      A list of classes annotated with Module or ProducerModule whose bindings are used to generate the subcomponent implementation. Note that through the use of Module.includes() or ProducerModule.includes() the full set of modules used to implement the subcomponent may include more modules that just those listed here.
      Default:
      {}