Class FileWatcherResourceReloadStrategy

  • All Implemented Interfaces:
    AutoCloseable, org.apache.camel.CamelContextAware, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.spi.ResourceReloadStrategy, org.apache.camel.StatefulService, org.apache.camel.StaticService, org.apache.camel.SuspendableService
    Direct Known Subclasses:
    RouteWatcherReloadStrategy

    @ManagedResource(description="Managed FileWatcherResourceReloadStrategy")
    public class FileWatcherResourceReloadStrategy
    extends ResourceReloadStrategySupport
    A file based ResourceReloadStrategy which watches a file folder for modified files and reload on file changes.

    This implementation uses the JDK WatchService to watch for when files are created or modified. Mac OS X users should be noted the osx JDK does not support native file system changes and therefore the watch service is much slower than on Linux or Windows systems.

    • Constructor Detail

      • FileWatcherResourceReloadStrategy

        public FileWatcherResourceReloadStrategy()
      • FileWatcherResourceReloadStrategy

        public FileWatcherResourceReloadStrategy​(String directory)
      • FileWatcherResourceReloadStrategy

        public FileWatcherResourceReloadStrategy​(String directory,
                                                 boolean isRecursive)
    • Method Detail

      • setFolder

        public void setFolder​(String folder)
      • setRecursive

        public void setRecursive​(boolean isRecursive)
      • setPollTimeout

        public void setPollTimeout​(long pollTimeout)
        Sets the poll timeout in millis. The default value is 2000.
      • getFolder

        @ManagedAttribute(description="Folder being watched")
        public String getFolder()
      • isRecursive

        @ManagedAttribute(description="Whether the reload strategy watches directory recursively")
        public boolean isRecursive()
      • isRunning

        @ManagedAttribute(description="Whether the watcher is running")
        public boolean isRunning()
      • getFileFilter

        public FileFilter getFileFilter()
      • setFileFilter

        public void setFileFilter​(FileFilter fileFilter)
        To use a custom filter for accepting files.
      • startupMessage

        protected String startupMessage​(File dir)