net.esper.eql.db
Interface DataCache

All Known Implementing Classes:
DataCacheExpiringImpl, DataCacheLRUImpl, DataCacheNullImpl

public interface DataCache

Implementations serve as caches for historical or reference data retrieved via lookup keys consisting or one or more rows represented by a list of events.


Method Summary
 List<EventBean> getCached(Object[] lookupKeys)
          Ask the cache if the keyed value is cached, returning a list or rows if the key is in the cache, or returning null to indicate no such key cached.
 void put(Object[] lookupKeys, List<EventBean> rows)
          Puts into the cache a key and a list of rows, or an empty list if zero rows.
 

Method Detail

getCached

List<EventBean> getCached(Object[] lookupKeys)
Ask the cache if the keyed value is cached, returning a list or rows if the key is in the cache, or returning null to indicate no such key cached. Zero rows may also be cached.

Parameters:
lookupKeys - is the keys to look up in the cache
Returns:
a list of rows that can be empty is the key was found in the cache, or null if the key is not found in the cache

put

void put(Object[] lookupKeys,
         List<EventBean> rows)
Puts into the cache a key and a list of rows, or an empty list if zero rows.

The put method is designed to be called when the cache does not contain a key as determined by the get method. Implementations typically simply overwrite any keys put into the cache that already existed in the cache.

Parameters:
lookupKeys - is the keys to the cache entry
rows - is a number of rows