Class SoftRefFilesCache

  • All Implemented Interfaces:
    FilesCache, VfsComponent
    Direct Known Subclasses:
    WeakRefFilesCache

    public class SoftRefFilesCache
    extends AbstractFilesCache
    This implementation caches every file as long as it is strongly reachable by the java vm. As soon as the vm needs memory - every softly reachable file will be discarded.
    Version:
    $Revision: 484648 $ $Date: 2005-09-30 09:02:41 +0200 (Fr, 30 Sep 2005) $
    Author:
    Mario Ivankovits
    See Also:
    SoftReference
    • Constructor Detail

      • SoftRefFilesCache

        public SoftRefFilesCache()
    • Method Detail

      • putFile

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

        protected java.lang.ref.Reference createReference​(FileObject file,
                                                          java.lang.ref.ReferenceQueue refqueue)
      • 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
      • 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)
      • getOrCreateFilesystemCache

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