Record Class DevServerConfig

java.lang.Object
java.lang.Record
io.fluxzero.devserver.DevServerConfig
Record Components:
projectDirectory - Maven or Gradle project directory
mainClass - optional application main class override; auto-detected when omitted
applicationName - Fluxzero application/client name for the app process
namespace - optional Fluxzero namespace/project id
watch - whether source watching is enabled
compileOnStart - whether to compile and launch the app on startup
testsEnabled - whether background tests are enabled
startupTimeout - timeout for app readiness
gracefulShutdownTimeout - timeout for old app shutdown
debounce - debounce duration for source/test changes
frontend - optional frontend adapter configuration
appArgs - application arguments
fastCompilerEnabled - whether ordinary Java source changes may use the Maven-correct fast compiler
environment - Fluxzero application environment, for example local or dev
applications - optional reactor applications/modules to start; all discovered apps start when empty
gatewayPort - public frontend/backend gateway port; 0 allocates a free dynamic port
idpMode - managed local IDP or application-owned external IDP
applicationConfig - named per-application launch configurations loaded from project config

public record DevServerConfig(Path projectDirectory, String mainClass, String applicationName, String namespace, boolean watch, boolean compileOnStart, boolean testsEnabled, Duration startupTimeout, Duration gracefulShutdownTimeout, Duration debounce, FrontendConfig frontend, List<String> appArgs, boolean fastCompilerEnabled, String environment, List<String> applications, int gatewayPort, IdpMode idpMode, Map<String, DevApplicationConfig> applicationConfig) extends Record
Configuration for the local Fluxzero dev server.
  • Field Details

    • DEFAULT_STARTUP_TIMEOUT

      public static final Duration DEFAULT_STARTUP_TIMEOUT
    • DEFAULT_GRACEFUL_SHUTDOWN_TIMEOUT

      public static final Duration DEFAULT_GRACEFUL_SHUTDOWN_TIMEOUT
    • DEFAULT_DEBOUNCE

      public static final Duration DEFAULT_DEBOUNCE
  • Constructor Details

  • Method Details

    • defaults

      public static DevServerConfig defaults(Path projectDirectory)
    • fromArgs

      public static DevServerConfig fromArgs(String[] args)
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with the compare method from their corresponding wrapper classes.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • projectDirectory

      public Path projectDirectory()
      Returns the value of the projectDirectory record component.
      Returns:
      the value of the projectDirectory record component
    • mainClass

      public String mainClass()
      Returns the value of the mainClass record component.
      Returns:
      the value of the mainClass record component
    • applicationName

      public String applicationName()
      Returns the value of the applicationName record component.
      Returns:
      the value of the applicationName record component
    • namespace

      public String namespace()
      Returns the value of the namespace record component.
      Returns:
      the value of the namespace record component
    • watch

      public boolean watch()
      Returns the value of the watch record component.
      Returns:
      the value of the watch record component
    • compileOnStart

      public boolean compileOnStart()
      Returns the value of the compileOnStart record component.
      Returns:
      the value of the compileOnStart record component
    • testsEnabled

      public boolean testsEnabled()
      Returns the value of the testsEnabled record component.
      Returns:
      the value of the testsEnabled record component
    • startupTimeout

      public Duration startupTimeout()
      Returns the value of the startupTimeout record component.
      Returns:
      the value of the startupTimeout record component
    • gracefulShutdownTimeout

      public Duration gracefulShutdownTimeout()
      Returns the value of the gracefulShutdownTimeout record component.
      Returns:
      the value of the gracefulShutdownTimeout record component
    • debounce

      public Duration debounce()
      Returns the value of the debounce record component.
      Returns:
      the value of the debounce record component
    • frontend

      public FrontendConfig frontend()
      Returns the value of the frontend record component.
      Returns:
      the value of the frontend record component
    • appArgs

      public List<String> appArgs()
      Returns the value of the appArgs record component.
      Returns:
      the value of the appArgs record component
    • fastCompilerEnabled

      public boolean fastCompilerEnabled()
      Returns the value of the fastCompilerEnabled record component.
      Returns:
      the value of the fastCompilerEnabled record component
    • environment

      public String environment()
      Returns the value of the environment record component.
      Returns:
      the value of the environment record component
    • applications

      public List<String> applications()
      Returns the value of the applications record component.
      Returns:
      the value of the applications record component
    • gatewayPort

      public int gatewayPort()
      Returns the value of the gatewayPort record component.
      Returns:
      the value of the gatewayPort record component
    • idpMode

      public IdpMode idpMode()
      Returns the value of the idpMode record component.
      Returns:
      the value of the idpMode record component
    • applicationConfig

      public Map<String, DevApplicationConfig> applicationConfig()
      Returns the value of the applicationConfig record component.
      Returns:
      the value of the applicationConfig record component