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

java.lang.Object
io.helidon.webserver.staticcontent.TemporaryStorageConfig.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>, ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Direct Known Subclasses:
TemporaryStorageConfig.Builder
Enclosing interface:
TemporaryStorageConfig

public abstract static class TemporaryStorageConfig.BuilderBase<BUILDER extends TemporaryStorageConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends TemporaryStorageConfig> extends Object implements ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Fluent API builder base for TemporaryStorage.
  • Constructor Details

    • BuilderBase

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

    • from

      public BUILDER from(TemporaryStorageConfig 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(TemporaryStorageConfig.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
    • config

      public BUILDER config(Config config)
      Update builder from configuration (node of this type). If a value is present in configuration, it would override currently configured values.
      Specified by:
      config in interface ConfigBuilderSupport.ConfiguredBuilder<BUILDER extends TemporaryStorageConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends TemporaryStorageConfig>
      Parameters:
      config - configuration instance used to obtain values to update this builder
      Returns:
      updated builder instance
    • enabled

      public BUILDER enabled(boolean enabled)
      Whether the temporary storage is enabled, defaults to true. If disabled, nothing is stored in temporary directory (may have performance impact, as for example a file may be extracted from a zip file on each request).
      Parameters:
      enabled - whether the temporary storage is enabled
      Returns:
      updated builder instance
      See Also:
    • clearDirectory

      public BUILDER clearDirectory()
      Clear existing value of this property.
      Returns:
      updated builder instance
      See Also:
    • directory

      public BUILDER directory(Path directory)
      Location of the temporary storage, defaults to temporary storage configured for the JVM.
      Parameters:
      directory - directory of temporary storage
      Returns:
      updated builder instance
      See Also:
    • filePrefix

      public BUILDER filePrefix(String filePrefix)
      Prefix of the files in temporary storage.
      Parameters:
      filePrefix - file prefix
      Returns:
      updated builder instance
      See Also:
    • fileSuffix

      public BUILDER fileSuffix(String fileSuffix)
      Suffix of the files in temporary storage.
      Parameters:
      fileSuffix - file suffix
      Returns:
      updated builder instance
      See Also:
    • deleteOnExit

      public BUILDER deleteOnExit(boolean deleteOnExit)
      Whether temporary files should be deleted on JVM exit. This is enabled by default, yet it may be useful for debugging purposes to keep the files in place.
      Parameters:
      deleteOnExit - whether to delete temporary files on JVM exit
      Returns:
      updated builder instance
      See Also:
    • enabled

      public boolean enabled()
      Whether the temporary storage is enabled, defaults to true. If disabled, nothing is stored in temporary directory (may have performance impact, as for example a file may be extracted from a zip file on each request).
      Returns:
      the enabled
    • directory

      public Optional<Path> directory()
      Location of the temporary storage, defaults to temporary storage configured for the JVM.
      Returns:
      the directory
    • filePrefix

      public String filePrefix()
      Prefix of the files in temporary storage.
      Returns:
      the file prefix
    • fileSuffix

      public String fileSuffix()
      Suffix of the files in temporary storage.
      Returns:
      the file suffix
    • deleteOnExit

      public boolean deleteOnExit()
      Whether temporary files should be deleted on JVM exit. This is enabled by default, yet it may be useful for debugging purposes to keep the files in place.
      Returns:
      the delete on exit
    • config

      public Optional<Config> config()
      If this instance was configured, this would be the config instance used.
      Returns:
      config node used to configure this builder, or empty if not configured
    • toString

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

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

      protected void validatePrototype()
      Validates required properties.