java.lang.Object
io.helidon.common.processor.classmodel.Method.Builder
All Implemented Interfaces:
Builder<Method.Builder,Method>, Supplier<Method>
Enclosing class:
Method

public static final class Method.Builder extends Object
Fluent API builder for Method.
  • Method Details

    • build

      public Method build()
      Description copied from interface: Builder
      Build the instance from this builder.
      Returns:
      instance of the built type
    • content

      public Method.Builder content(List<String> content)
      Set new content. This method replaces previously created content in this builder.
      Parameters:
      content - content to be set
      Returns:
      updated builder instance
    • isFinal

      public Method.Builder isFinal(boolean isFinal)
      Whether this method is final.
      Parameters:
      isFinal - method is final
      Returns:
      updated builder instance
    • isStatic

      public Method.Builder isStatic(boolean isStatic)
      Whether this method is static.
      Parameters:
      isStatic - method is static
      Returns:
      updated builder instance
    • isAbstract

      public Method.Builder isAbstract(boolean isAbstract)
      Whether this method is abstract.
      Parameters:
      isAbstract - method is abstract
      Returns:
      updated builder instance
    • isDefault

      public Method.Builder isDefault(boolean isDefault)
      Whether this method is default.
      Parameters:
      isDefault - method is default
      Returns:
      updated builder instance
    • returnType

      public Method.Builder returnType(TypeName type)
      Set return type of the method. Default is void.
      Parameters:
      type - return type
      Returns:
      updated builder instance
    • returnType

      public Method.Builder returnType(TypeName type, String description)
      Set return type of the method. Default is void.
      Parameters:
      type - return type
      description - return type description
      Returns:
      updated builder instance
    • returnType

      public Method.Builder returnType(Consumer<Returns.Builder> consumer)
      Set return type of the method. Default is void.
      Parameters:
      consumer - return type builder consumer
      Returns:
      updated builder instance
    • returnType

      public Method.Builder returnType(Supplier<Returns> supplier)
      Set return type of the method. Default is void.
      Parameters:
      supplier - return type supplier
      Returns:
      updated builder instance
    • returnType

      public Method.Builder returnType(Returns returnType)
      Set return type of the method. Default is void.
      Parameters:
      returnType - return type
      Returns:
      updated builder instance
    • addGenericArgument

      public Method.Builder addGenericArgument(TypeArgument typeArgument)
      Add generic argument to be declared by this method.
      Parameters:
      typeArgument - argument to be declared
      Returns:
      updated builder instance
    • javadoc

      public Method.Builder javadoc(Javadoc javadoc)
    • addJavadocTag

      public Method.Builder addJavadocTag(String tag, String description)
    • accessModifier

      public Method.Builder accessModifier(AccessModifier accessModifier)
    • addLine

      public Method.Builder addLine(String line)
      Add text line to the content. New line character is added after this line.
      Parameters:
      line - line to add
      Returns:
      updated builder instance
    • add

      public Method.Builder add(String line)
      Add text line to the content. New line character is not added after this line, so all newly added text will be appended to the same line.
      Parameters:
      line - line to add
      Returns:
      updated builder instance
    • clearContent

      public Method.Builder clearContent()
      Clears created content.
      Returns:
      updated builder instance
    • typeName

      public Method.Builder typeName(String fqClassName)
      Obtained fully qualified type name is enclosed between ClassModel.TYPE_TOKEN tokens. Class names in such a format are later recognized as class names for import handling.
      Parameters:
      fqClassName - fully qualified class name to import
      Returns:
      updated builder instance
    • typeName

      public Method.Builder typeName(Class<?> type)
      Obtained type is enclosed between ClassModel.TYPE_TOKEN tokens. Class names in such a format are later recognized as class names for import handling.
      Parameters:
      type - type to import
      Returns:
      updated builder instance
    • typeName

      public Method.Builder typeName(TypeName typeName)
      Obtained type is enclosed between ClassModel.TYPE_TOKEN tokens. Class names in such a format are later recognized as class names for import handling.
      Parameters:
      typeName - type name to import
      Returns:
      updated builder instance
    • padding

      public Method.Builder padding()
      Adds single padding. This extra padding is added only once. If more permanent padding increment is needed use {increasePadding()}.
      Returns:
      updated builder instance
    • padding

      public Method.Builder padding(int repetition)
      Adds padding with number of repetitions. This extra padding is added only once. If more permanent padding increment is needed use {increasePadding()}.
      Parameters:
      repetition - number of padding repetitions
      Returns:
      updated builder instance
    • increasePadding

      public Method.Builder increasePadding()
      Method for manual padding increment. This method will affect padding of the later added content.
      Returns:
      updated builder instance
    • decreasePadding

      public Method.Builder decreasePadding()
      Method for manual padding decrement. This method will affect padding of the later added content.
      Returns:
      updated builder instance
    • content

      public Method.Builder content(String content)
      Set new content. This method replaces previously created content in this builder.
      Parameters:
      content - content to be set
      Returns:
      updated builder instance
    • addParameter

      public Method.Builder addParameter(Consumer<Parameter.Builder> consumer)
      Add new method parameter.
      Parameters:
      consumer - method builder consumer
      Returns:
      updated builder instance
    • addParameter

      public Method.Builder addParameter(Parameter parameter)
      Add new method parameter.
      Parameters:
      parameter - method parameter
      Returns:
      updated builder instance
    • addParameter

      public Method.Builder addParameter(Supplier<Parameter> supplier)
      Add new method parameter.
      Parameters:
      supplier - method parameter supplier
      Returns:
      updated builder instance
    • addThrows

      public Method.Builder addThrows(TypeName exception, String description)
    • addThrows

      public Method.Builder addThrows(Consumer<Throws.Builder> consumer)
    • addThrows

      public Method.Builder addThrows(Supplier<Throws> supplier)
    • addThrows

      public Method.Builder addThrows(Throws exception)
    • generateJavadoc

      public Method.Builder generateJavadoc(boolean generateJavadoc)
    • description

      public Method.Builder description(String description)
    • description

      public Method.Builder description(List<String> description)
    • addDescriptionLine

      public Method.Builder addDescriptionLine(String line)
    • addAnnotation

      public Method.Builder addAnnotation(Consumer<Annotation.Builder> consumer)
      Add new annotation to the component.
      Parameters:
      consumer - annotation builder consumer
      Returns:
      updated builder instance
    • addAnnotation

      public Method.Builder addAnnotation(Annotation.Builder builder)
      Add new annotation to the component.
      Parameters:
      builder - annotation builder
      Returns:
      updated builder instance
    • addAnnotation

      public Method.Builder addAnnotation(Annotation annotation)
      Add new annotation to the component.
      Parameters:
      annotation - annotation instance
      Returns:
      updated builder instance
    • name

      public Method.Builder name(String name)
    • includeImport

      public Method.Builder includeImport(boolean includeImport)
      Whether to include import type information among the imports.
      Parameters:
      includeImport -
      Returns: