|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.espertech.esper.epl.db.DataCacheExpiringImpl
public class DataCacheExpiringImpl
Implements an expiry-time cache that evicts data when data becomes stale after a given number of seconds.
The cache reference type indicates which backing Map is used: Weak type uses the WeakHashMap, Soft type uses the apache commons ReferenceMap, and Hard type simply uses a HashMap.
Constructor Summary | |
---|---|
DataCacheExpiringImpl(double maxAgeSec,
double purgeIntervalSec,
ConfigurationCacheReferenceType cacheReferenceType,
SchedulingService schedulingService,
ScheduleSlot scheduleSlot,
EPStatementAgentInstanceHandle epStatementAgentInstanceHandle)
Ctor. |
Method Summary | |
---|---|
EventTable[] |
getCached(java.lang.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. |
protected long |
getMaxAgeMSec()
Returns the maximum age in milliseconds. |
protected long |
getPurgeIntervalMSec()
Returns the purge interval in milliseconds. |
protected long |
getSize()
Returns the current cache size. |
boolean |
isActive()
Returns true if the cache is active and currently caching, or false if the cache is inactive and not currently caching |
void |
put(java.lang.Object[] lookupKeys,
EventTable[] rows)
Puts into the cache a key and a list of rows, or an empty list if zero rows. |
void |
scheduledTrigger(ExtensionServicesContext extensionServicesContext)
Callback that is invoked as indicated by a schedule added to the scheduling service. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DataCacheExpiringImpl(double maxAgeSec, double purgeIntervalSec, ConfigurationCacheReferenceType cacheReferenceType, SchedulingService schedulingService, ScheduleSlot scheduleSlot, EPStatementAgentInstanceHandle epStatementAgentInstanceHandle)
maxAgeSec
- is the maximum age in secondspurgeIntervalSec
- is the purge interval in secondscacheReferenceType
- indicates whether hard, soft or weak references are used in the cacheschedulingService
- is a service for call backs at a scheduled time, for purgingscheduleSlot
- slot for scheduling callbacks for this cacheepStatementAgentInstanceHandle
- is the statements-own handle for use in registering callbacks with servicesMethod Detail |
---|
public EventTable[] getCached(java.lang.Object[] lookupKeys)
DataCache
getCached
in interface DataCache
lookupKeys
- is the keys to look up in the cache
public void put(java.lang.Object[] lookupKeys, EventTable[] rows)
DataCache
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.
put
in interface DataCache
lookupKeys
- is the keys to the cache entryrows
- is a number of rowsprotected long getMaxAgeMSec()
protected long getPurgeIntervalMSec()
public boolean isActive()
DataCache
isActive
in interface DataCache
protected long getSize()
public void scheduledTrigger(ExtensionServicesContext extensionServicesContext)
ScheduleHandleCallback
scheduledTrigger
in interface ScheduleHandleCallback
extensionServicesContext
- is a marker interface for providing custom extension services
passed to the triggered class
|
© 2006-2015 EsperTech Inc. All rights reserved. Visit us at espertech.com |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |