Class HotDeploy

java.lang.Object
com.iizix.server.app.HotDeploy

public class HotDeploy extends Object
A hot deploy app that defines what is included for hot deploy to check for changes. The file system watcher service on the top level directory is used, then when it happens, the application files and directories are checked if it does affect a reload.
Author:
Christopher Mindus
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final long
    The default settle time in milliseconds: an application whose files have changed is reported as changed only once no file event has arrived for this long, so that a reload never runs in the middle of a rebuild (CC-FIX-TRANSLATION-ENGINE-RELOAD).
  • Method Summary

    Modifier and Type
    Method
    Description
    Adds a new directory to check for changes.
    addDirectory(File dir, File[] files)
    Adds a new directory to check for changes.
    void
    addFile(File file)
    Adds a new file or directory to check for changes.
    static long
    Gets the settle time: how long the files of an application must have been quiet before it is reported as changed.
  • Field Details

    • DEFAULT_SETTLE_TIME

      public static final long DEFAULT_SETTLE_TIME
      The default settle time in milliseconds: an application whose files have changed is reported as changed only once no file event has arrived for this long, so that a reload never runs in the middle of a rebuild (CC-FIX-TRANSLATION-ENGINE-RELOAD). Two seconds: a build writes the class files of a project within fractions of a second of each other (an iiziGo restart rebuilt four projects in five seconds, 2026-10-27), and a single save of a developer is live two seconds later.
      See Also:
  • Method Details

    • getSettleTime

      public static long getSettleTime()
      Gets the settle time: how long the files of an application must have been quiet before it is reported as changed.
      Returns:
      The settle time in milliseconds.
    • addFile

      public void addFile(File file)
      Adds a new file or directory to check for changes.
      Parameters:
      file - The file or directory to keep track of.
    • addDirectory

      public File[] addDirectory(File dir)
      Adds a new directory to check for changes.
      Parameters:
      dir - The directory to keep track of.
      Returns:
      The list of files in the directory, perhaps empty (and never null).
    • addDirectory

      public File[] addDirectory(File dir, File[] files)
      Adds a new directory to check for changes.
      Parameters:
      dir - The directory to keep track of.
      files - The files to add.
      Returns:
      The list of files in the directory, perhaps empty (and never null).