RSSCache
- mod:
RSSCache
Extension of DictCache to be used within RSS
- class DIRAC.ResourceStatusSystem.Utilities.RSSCache.RSSCache(lifeTime, updateFunc=None, cacheHistoryLifeTime=None)
Bases:
object
Cache with purgeThread integrated
- __init__(lifeTime, updateFunc=None, cacheHistoryLifeTime=None)
Constructor
- acquireLock()
Acquires RSSCache lock
- get(resourceKey)
Gets the resource(s) status(es). Every resource can have multiple statuses, so in order to speed up things, we store them on the cache as follows:
{ (<resourceName>,<resourceStatusType0>) : whatever0, (<resourceName>,<resourceStatusType1>) : whatever1, }
- getBulk(resourceKeys)
Gets values for resourceKeys in one ATOMIC operation.
- getCacheHistory()
Return the cache updates history
- getCacheKeys()
List all the keys stored in the cache.
- getCacheStatus()
Return the latest cache status
- isCacheAlive()
Returns status of the cache refreshing thread
- refreshCache()
Clears the cache and gets its latest version, not Thread safe ! Acquire a lock before using it ! ( and release it afterwards ! )
- refreshCacheAndHistory()
Method that refreshes the cache and updates the history. Not thread safe, you must acquire a lock before using it, and release it right after !
- releaseLock()
Releases RSSCache lock
- resetCache()
Reset cache.
- setCacheHistoryLifeTime(cacheHistoryLifeTime)
Set cache life time
- setLifeTime(lifeTime)
Set cache life time
- startRefreshThread()
Run refresh thread.
- stopRefreshThread()
Stop refresh thread.