Class CompilerOptions.BuilderBase<BUILDER extends CompilerOptions.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends CompilerOptions>

java.lang.Object
io.helidon.codegen.compiler.CompilerOptions.BuilderBase<BUILDER,PROTOTYPE>
Type Parameters:
BUILDER - type of the builder extending this abstract builder
PROTOTYPE - type of the prototype interface that would be built by Prototype.Builder.buildPrototype()
All Implemented Interfaces:
Prototype.Builder<BUILDER,PROTOTYPE>
Direct Known Subclasses:
CompilerOptions.Builder
Enclosing interface:
CompilerOptions

public abstract static class CompilerOptions.BuilderBase<BUILDER extends CompilerOptions.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends CompilerOptions> extends Object implements Prototype.Builder<BUILDER,PROTOTYPE>
Fluent API builder base for CompilerOptions.
  • Constructor Details

    • BuilderBase

      protected BuilderBase()
      Protected to support extensibility.
  • Method Details

    • from

      public BUILDER from(CompilerOptions prototype)
      Update this builder from an existing prototype instance. This method disables automatic service discovery.
      Parameters:
      prototype - existing prototype to update this builder from
      Returns:
      updated builder instance
    • from

      public BUILDER from(CompilerOptions.BuilderBase<?,?> builder)
      Update this builder from an existing prototype builder instance.
      Parameters:
      builder - existing builder prototype to update this builder from
      Returns:
      updated builder instance
    • classpath

      public BUILDER classpath(List<? extends Path> classpath)
      The classpath to pass to the compiler.
      Parameters:
      classpath - classpath
      Returns:
      updated builder instance
      See Also:
    • addClasspath

      public BUILDER addClasspath(List<? extends Path> classpath)
      The classpath to pass to the compiler.
      Parameters:
      classpath - classpath
      Returns:
      updated builder instance
      See Also:
    • addClasspath

      public BUILDER addClasspath(Path classpath)
      The classpath to pass to the compiler.
      Parameters:
      classpath - classpath
      Returns:
      updated builder instance
      See Also:
    • modulepath

      public BUILDER modulepath(List<? extends Path> modulepath)
      The modulepath to pass to the compiler.
      Parameters:
      modulepath - the module path
      Returns:
      updated builder instance
      See Also:
    • addModulepath

      public BUILDER addModulepath(List<? extends Path> modulepath)
      The modulepath to pass to the compiler.
      Parameters:
      modulepath - the module path
      Returns:
      updated builder instance
      See Also:
    • addModulepath

      public BUILDER addModulepath(Path modulepath)
      The modulepath to pass to the compiler.
      Parameters:
      modulepath - the module path
      Returns:
      updated builder instance
      See Also:
    • sourcepath

      public BUILDER sourcepath(List<? extends Path> sourcepath)
      The source path to pass to the compiler.
      Parameters:
      sourcepath - the source path
      Returns:
      updated builder instance
      See Also:
    • addSourcepath

      public BUILDER addSourcepath(List<? extends Path> sourcepath)
      The source path to pass to the compiler.
      Parameters:
      sourcepath - the source path
      Returns:
      updated builder instance
      See Also:
    • addSourcepath

      public BUILDER addSourcepath(Path sourcepath)
      The source path to pass to the compiler.
      Parameters:
      sourcepath - the source path
      Returns:
      updated builder instance
      See Also:
    • commandLineArguments

      public BUILDER commandLineArguments(List<? extends String> commandLineArguments)
      The command line arguments to pass to the compiler.
      Parameters:
      commandLineArguments - arguments
      Returns:
      updated builder instance
      See Also:
    • addCommandLineArguments

      public BUILDER addCommandLineArguments(List<? extends String> commandLineArguments)
      The command line arguments to pass to the compiler.
      Parameters:
      commandLineArguments - arguments
      Returns:
      updated builder instance
      See Also:
    • addCommandLineArgument

      public BUILDER addCommandLineArgument(String commandLineArgument)
      The command line arguments to pass to the compiler.
      Parameters:
      commandLineArgument - arguments
      Returns:
      updated builder instance
      See Also:
    • source

      public BUILDER source(String source)
      The compiler source version.
      Parameters:
      source - source version
      Returns:
      updated builder instance
      See Also:
    • target

      public BUILDER target(String target)
      The compiler target version.
      Parameters:
      target - target version
      Returns:
      updated builder instance
      See Also:
    • outputDirectory

      public BUILDER outputDirectory(Path outputDirectory)
      Target directory to generate class files to.
      Parameters:
      outputDirectory - output directory
      Returns:
      updated builder instance
      See Also:
    • logger

      public BUILDER logger(CodegenLogger logger)
      Logger to use, falls back to system logger.
      Parameters:
      logger - logger
      Returns:
      updated builder instance
      See Also:
    • classpath

      public List<Path> classpath()
      The classpath to pass to the compiler.
      Returns:
      the classpath
    • modulepath

      public List<Path> modulepath()
      The modulepath to pass to the compiler.
      Returns:
      the modulepath
    • sourcepath

      public List<Path> sourcepath()
      The source path to pass to the compiler.
      Returns:
      the sourcepath
    • commandLineArguments

      public List<String> commandLineArguments()
      The command line arguments to pass to the compiler.
      Returns:
      the command line arguments
    • source

      public String source()
      The compiler source version.
      Returns:
      the source
    • target

      public String target()
      The compiler target version.
      Returns:
      the target
    • outputDirectory

      public Optional<Path> outputDirectory()
      Target directory to generate class files to.
      Returns:
      the output directory
    • logger

      public CodegenLogger logger()
      Logger to use, falls back to system logger.
      Returns:
      the logger
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • preBuildPrototype

      protected void preBuildPrototype()
      Handles providers and decorators.
    • validatePrototype

      protected void validatePrototype()
      Validates required properties.