Class LRUFilesCache

  • All Implemented Interfaces:
    FilesCache, VfsComponent

    public class LRUFilesCache
    extends AbstractFilesCache
    This implementation caches every file using LRUMap.
    The default constructor uses a LRU size of 100 per filesystem.
    Version:
    $Revision: 480428 $ $Date: 2006-11-29 07:15:24 +0100 (Wed, 29 Nov 2006) $
    Author:
    Mario Ivankovits
    • Constructor Detail

      • LRUFilesCache

        public LRUFilesCache()
        Default constructor. Uses a LRU size of 100 per filesystem.
      • LRUFilesCache

        public LRUFilesCache​(int lruSize)
        Set the desired LRU size.
        Parameters:
        lruSize - the LRU size
    • Method Detail

      • putFile

        public void putFile​(FileObject file)
        Description copied from interface: FilesCache
        add a fileobject to the cache
        Parameters:
        file - the file
      • getFile

        public FileObject getFile​(FileSystem filesystem,
                                  FileName name)
        Description copied from interface: FilesCache
        retrieve a file from the cache by its name
        name - the name
        Returns:
        the fileobject or null if file is not cached
      • clear

        public void clear​(FileSystem filesystem)
        Description copied from interface: FilesCache
        purge the entries corresponding to the filesystem
      • getOrCreateFilesystemCache

        protected java.util.Map getOrCreateFilesystemCache​(FileSystem filesystem)
      • removeFile

        public void removeFile​(FileSystem filesystem,
                               FileName name)
        Description copied from interface: FilesCache
        removes a file from cache
        Parameters:
        filesystem - filesystem
        name - filename
      • touchFile

        public void touchFile​(FileObject file)