Class PluginInstallUtils.RemovalDeferredException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.io.IOException
java.nio.file.FileSystemException
com.ultikits.ultitools.utils.PluginInstallUtils.RemovalDeferredException
All Implemented Interfaces:
Serializable
Enclosing class:
PluginInstallUtils

@Internal public static final class PluginInstallUtils.RemovalDeferredException extends FileSystemException
The uninstall could not delete these JARs now -- the running server holds them open, or the folder is not writable -- and has recorded them, so the next start deletes them before any module loads (#518). A failure type of its own, so a caller tells the operator exactly that rather than asking them to delete a file they cannot delete while the server runs.
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • deferredFiles

      private final List<String> deferredFiles
    • reason

      private final String reason
  • Constructor Details

    • RemovalDeferredException

      private RemovalDeferredException(List<String> deferredFiles, String reason)
  • Method Details

    • of

      public static PluginInstallUtils.RemovalDeferredException of(List<String> deferredFiles, String reason)
      Parameters:
      deferredFiles - the absolute paths of the JARs recorded for deletion at the next start
      reason - why they could not be deleted now
      Returns:
      the failure
    • deferredFiles

      public List<String> deferredFiles()
      Returns:
      the absolute paths of the JARs recorded for deletion at the next start
    • getReason

      public String getReason()
      Overrides:
      getReason in class FileSystemException
      Returns:
      why they could not be deleted now