Package io.helidon.builder


package io.helidon.builder
The Builder API consists of a few annotations that can be used to create fluent builders for the types that use Builder, or otherwise one of its kind. The meta annotation BuilderTrigger is used to annotate the annotations that trigger custom-style builders.

The Builder annotation typically is applied to the an interface type, but it can also be used directly on annotation types as well. When applied, and if the annotation processor is applied for the builder-type annotation then an implementation class is generated that supports the fluent-builder pattern for that type.

A few things to note:

  • The target type that is annotated with the builder annotation should have all getter-like methods.
  • Any static or default method will be ignored during APT processing.
  • Class
    Description
    Adding this annotation in conjunction with the Builder on a target interface type or method causes the Annotated.value() to be added to the generated implementation class and methods respectfully.
    A functional interface that can be used to visit all attributes of this type.
    Adding this annotation on an interface will cause the Builder's annotation processor to generate an implementation of the interface that supports the builder pattern.
    Provides a contract by which the Builder-annotated builder type can be intercepted (i.e., including decoration or mutation).
    The meta-annotation will trigger the enclosing service type marked with this annotation to drive the builder-processor.
    Deprecated.
    This class is subject to change at any time - Helidon users should not use this directly.
    Applying this annotation to a Builder-annotated interface method will cause the generated class to also include additional "add*()" methods.