Annotation Type EachBean


  • @Documented
    @Retention(RUNTIME)
    @Target({METHOD,TYPE})
    @Singleton
    public @interface EachBean

    This annotation allows driving the production of Bean definitions from presence of other bean definitions. Typically used in conjunction with EachProperty

    For example:

    
      @EachProperty("foo.bar")
       public class ExampleConfiguration {
       }
     

    In the above example a new ExampleConfiguration bean will be created for each item under the foo.bar key in application configuration

    One can then drive the configuration of other beans with the same annotation:

    
      @EachBean(ExampleConfiguration)
      @Singleton
       public class ExampleBean {
          ExampleBean(ExampleConfiguration config) {
              ...
          }
       }
     
    Since:
    1.0
    See Also:
    EachProperty, ConfigurationProperties
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      java.lang.Class value  
    • Element Detail

      • value

        java.lang.Class value
        Returns:
        The bean type that this bean is driven by