Class FileAlterationMonitor

  • All Implemented Interfaces:
    java.lang.Runnable

    public final class FileAlterationMonitor
    extends java.lang.Object
    implements java.lang.Runnable
    A runnable that spawns a monitoring thread triggering any registered FileAlterationObserver at a specified interval.
    Since:
    2.0
    See Also:
    FileAlterationObserver
    • Constructor Detail

      • FileAlterationMonitor

        public FileAlterationMonitor()
        Constructs a monitor with a default interval of 10 seconds.
      • FileAlterationMonitor

        public FileAlterationMonitor​(long interval)
        Constructs a monitor with the specified interval.
        Parameters:
        interval - The amount of time in milliseconds to wait between checks of the file system.
      • FileAlterationMonitor

        public FileAlterationMonitor​(long interval,
                                     java.util.Collection<FileAlterationObserver> observers)
        Constructs a monitor with the specified interval and collection of observers.
        Parameters:
        interval - The amount of time in milliseconds to wait between checks of the file system.
        observers - The collection of observers to add to the monitor.
        Since:
        2.9.0
      • FileAlterationMonitor

        public FileAlterationMonitor​(long interval,
                                     FileAlterationObserver... observers)
        Constructs a monitor with the specified interval and set of observers.
        Parameters:
        interval - The amount of time in milliseconds to wait between checks of the file system.
        observers - The set of observers to add to the monitor.
    • Method Detail

      • getInterval

        public long getInterval()
        Returns the interval.
        Returns:
        the interval
      • setThreadFactory

        public void setThreadFactory​(java.util.concurrent.ThreadFactory threadFactory)
        Sets the thread factory.
        Parameters:
        threadFactory - the thread factory
      • addObserver

        public void addObserver​(FileAlterationObserver observer)
        Adds a file system observer to this monitor.
        Parameters:
        observer - The file system observer to add
      • removeObserver

        public void removeObserver​(FileAlterationObserver observer)
        Removes a file system observer from this monitor.
        Parameters:
        observer - The file system observer to remove
      • start

        public void start()
                   throws java.lang.Exception
        Starts monitoring.
        Throws:
        java.lang.Exception - if an error occurs initializing the observer
      • stop

        public void stop()
                  throws java.lang.Exception
        Stops monitoring.
        Throws:
        java.lang.Exception - if an error occurs initializing the observer
      • stop

        public void stop​(long stopInterval)
                  throws java.lang.Exception
        Stops monitoring.
        Parameters:
        stopInterval - the amount of time in milliseconds to wait for the thread to finish. A value of zero will wait until the thread is finished (see Thread.join(long)).
        Throws:
        java.lang.Exception - if an error occurs initializing the observer
        Since:
        2.1
      • run

        public void run()
        Runs this monitor.
        Specified by:
        run in interface java.lang.Runnable