Nuxeo ECM Projects 5.4.3-SNAPSHOT

org.nuxeo.common.file
Interface FileCache

All Known Implementing Classes:
LRUFileCache

public interface FileCache

A cache of Files.

The cache uses application-chosen keys.

To check presence in the cache, use getFile(java.lang.String).

To put a new InputStream in the cache, use putFile(String, InputStream). Or if you'd like a File object into which to write some data, get one using getTempFile(), put the actual binary in it, then pass this file to putFile(String, File).

See Also:
LRUFileCache

Method Summary
 void clear()
          Clears the cache.
 File getFile(String key)
          Gets a file from the cache.
 int getNumberOfItems()
          Gets the number of items in the cache.
 long getSize()
          Gets the size of the cache, in bytes.
 File getTempFile()
          Creates a temporary file.
 File putFile(String key, File file)
          Puts a file in the cache.
 File putFile(String key, InputStream in)
          Puts a file in the cache.
 

Method Detail

getSize

long getSize()
Gets the size of the cache, in bytes.


getNumberOfItems

int getNumberOfItems()
Gets the number of items in the cache.


getTempFile

File getTempFile()
                 throws IOException
Creates a temporary file.

Throws:
IOException

putFile

File putFile(String key,
             InputStream in)
             throws IOException
Puts a file in the cache.

Parameters:
key - the cache key
in - the input stream to cache (closed afterwards)
Returns:
the cached file
Throws:
IllegalArgumentException - if the key is illegal
IOException

putFile

File putFile(String key,
             File file)
             throws IOException
Puts a file in the cache.

The file must have been created through getTempFile(). The file is "given" to this method, who will delete it or rename it.

Parameters:
key - the cache key
file - the file to cache
Returns:
the cached file
Throws:
IllegalArgumentException - if the key is illegal
IOException

getFile

File getFile(String key)
Gets a file from the cache.

A returned file will never be deleted from the filesystem while the returned file object is still referenced, although it may be purged from the cache.

Parameters:
key - the cache key
Returns:
the cached file, or null if absent

clear

void clear()
Clears the cache.

Files will not be deleted from the filesystm while the returned file objects are still referenced.


Nuxeo ECM Projects 5.4.3-SNAPSHOT

Copyright © 2011 Nuxeo SAS. All Rights Reserved.