Interface BeanDefinitionBuilder<C,M,F,R>

Type Parameters:
C - The class type
M - The method element type
F - The field type
R - The builder result
All Superinterfaces:
Buildable<R>
All Known Subinterfaces:
ElementBeanDefinitionBuilder<R>
All Known Implementing Classes:
BeanDefinitionWriter

public interface BeanDefinitionBuilder<C,M,F,R> extends Buildable<R>
Builder abstraction for collecting bean definition metadata.
Since:
5.1.0
Author:
Denis Stepanov
  • Method Details

    • addExecutableMethod

      BeanDefinitionBuilder<C,M,F,R> addExecutableMethod(M methodElement, boolean requiresReflection)
      Adds an executable method to the bean definition.
      Parameters:
      methodElement - The method element
      requiresReflection - Whether reflective invocation is required
    • addMethodInjection

      BeanDefinitionBuilder<C,M,F,R> addMethodInjection(MethodDefinition<C,M> methodDefinition)
      Adds a method injection point to the bean definition.
      Parameters:
      methodDefinition - The method definition
    • addFieldInjection

      BeanDefinitionBuilder<C,M,F,R> addFieldInjection(FieldDefinition<C,F> fieldDefinition)
      Adds a field injection point to the bean definition.
      Parameters:
      fieldDefinition - The field definition
    • addPostConstruct

      BeanDefinitionBuilder<C,M,F,R> addPostConstruct(MethodDefinition<C,M> methodDefinition)
      Registers a @PostConstruct method.
      Parameters:
      methodDefinition - The lifecycle method definition
    • addPreDestroy

      BeanDefinitionBuilder<C,M,F,R> addPreDestroy(MethodDefinition<C,M> methodDefinition)
      Registers a @PreDestroy method.
      Parameters:
      methodDefinition - The lifecycle method definition
    • addFieldConfigurationBuilder

      BeanDefinitionBuilder<C,M,F,R> addFieldConfigurationBuilder(F fieldElement, AnnotationMetadata annotationMetadata, List<MethodDefinition<C,M>> builderMethods)
      Adds a field-based configuration builder.
      Parameters:
      fieldElement - The configuration field
      annotationMetadata - Associated annotation metadata
      builderMethods - The builder methods
    • addMethodConfigurationBuilder

      BeanDefinitionBuilder<C,M,F,R> addMethodConfigurationBuilder(M methodElement, AnnotationMetadata annotationMetadata, List<MethodDefinition<C,M>> builderMethods)
      Adds a method-based configuration builder.
      Parameters:
      methodElement - The configuration method
      annotationMetadata - Associated annotation metadata
      builderMethods - The builder methods