Class CleanupHook

  • All Implemented Interfaces:
    java.lang.Runnable

    public class CleanupHook
    extends java.lang.Thread
    Defines a ShutdownHook for a class which has a cleanup method.
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.lang.Thread

        java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
    • Field Summary

      • Fields inherited from class java.lang.Thread

        MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
    • Constructor Summary

      Constructors 
      Constructor Description
      CleanupHook​(CleanupIF app)
      Returns a ShutdownHook thread for an object with a cleanup() method.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void run()
      Called by the JVM to clean up the object before exiting.
      • Methods inherited from class java.lang.Thread

        activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • CleanupHook

        public CleanupHook​(CleanupIF app)
        Returns a ShutdownHook thread for an object with a cleanup() method.
        Parameters:
        app - the Object to be cleaned up
    • Method Detail

      • run

        public void run()
        Called by the JVM to clean up the object before exiting. The method calls the cleanup() method Note: System.out.println is added in this method because logging may or may not be active at this time.
        Specified by:
        run in interface java.lang.Runnable
        Overrides:
        run in class java.lang.Thread