org.pentaho.reporting.libraries.resourceloader.cache

## Interface ResourceBundleDataCache

All Known Implementing Classes:
  EHResourceBundleDataCache, NullResourceBundleDataCache

    public interface ResourceBundleDataCache

Creation-Date: 06.04.2006, 09:30:28

Author:
  Thomas Morgner

### Method Summary

Methods
`void` `clear()` Remove all cached entries.
`ResourceBundleDataCacheEntry` `get(ResourceKey key)` Retrieves the given data from the cache.
`ResourceBundleData` `put(ResourceManager caller, ResourceBundleData data)` Stores the given data on the cache.
`void` `remove(ResourceBundleData data)`
`void` `shutdown()`

### Method Detail

#### get

    ResourceBundleDataCacheEntry get(ResourceKey key)

Retrieves the given data from the cache.

Parameters:
  `key` - the resource key for the data.
Returns:
  the cached entry or null, if the entry is no longer in the cache.

#### put

    ResourceBundleData put(ResourceManager caller,
                         ResourceBundleData data)
                           throws ResourceLoadingException

Stores the given data on the cache. The data is registered by its primary key. The cache has to store the current version of the data.

Parameters:
  `caller` - the calling resource manager.
  `data` - the data to be stored in the cache
Returns:
  the resource data object, possibly wrapped by a cache-specific implementation.
Throws:
  `ResourceLoadingException` - if an error prevents the data from being cached.

#### remove

    void remove(ResourceBundleData data)

#### clear

    void clear()

Remove all cached entries. This should be called after the cache has become invalid or after it has been removed from a resource manager.

#### shutdown

    void shutdown()