Class VFSFileHandlerReloadingDetector

  • All Implemented Interfaces:
    ReloadingDetector

    public class VFSFileHandlerReloadingDetector
    extends FileHandlerReloadingDetector

    A file-based reloading strategy that uses Commons VFS to determine when a file was changed.

    This reloading strategy is very similar to FileHandlerReloadingDetector, except for the fact that it uses VFS and thus can deal with a variety of different configuration sources.

    This strategy only works with FileConfiguration instances.

    Since:
    1.7
    • Field Detail

      • log

        private final org.apache.commons.logging.Log log
        Stores the logger.
    • Constructor Detail

      • VFSFileHandlerReloadingDetector

        public VFSFileHandlerReloadingDetector()
        Creates a new instance of VFSFileHandlerReloadingDetector and initializes it with an empty FileHandler object.
      • VFSFileHandlerReloadingDetector

        public VFSFileHandlerReloadingDetector​(FileHandler handler)
        Creates a new instance of VFSFileHandlerReloadingDetector and initializes it with the given FileHandler object.
        Parameters:
        handler - the FileHandler
      • VFSFileHandlerReloadingDetector

        public VFSFileHandlerReloadingDetector​(FileHandler handler,
                                               long refreshDelay)
        Creates a new instance of VFSFileHandlerReloadingDetector and initializes it with the given FileHandler object and the given refresh delay.
        Parameters:
        handler - the FileHandler
        refreshDelay - the refresh delay
    • Method Detail

      • getFileObject

        protected org.apache.commons.vfs2.FileObject getFileObject()
        Gets the file that is monitored by this strategy. Note that the return value can be null under some circumstances.
        Returns:
        the monitored file
      • getLastModificationDate

        protected long getLastModificationDate()
        Gets the date of the last modification of the monitored file. A return value of 0 indicates, that the monitored file does not exist. This implementation uses Commons VFS to obtain a FileObject and read the date of the last modification.
        Overrides:
        getLastModificationDate in class FileHandlerReloadingDetector
        Returns:
        the last modification date in milliseconds.
      • resolveFileURI

        protected java.lang.String resolveFileURI()
        Resolves the URI of the monitored file.
        Returns:
        the URI of the monitored file or null if it cannot be resolved