lump.cache module

class lump.cache.CacheAggregate(cachers)[source]

Bases: object

class lump.cache.CacheLocker(cacher)[source]

Bases: lump.cache.CacheProxy

class lump.cache.CacheProxy(cacher)[source]

Bases: object

class lump.cache.DictCacher[source]

Bases: dict

Simple ‘Local’ cacher using a new dict… Usable to re-use same interface for other classes…

>>> cache = DictCacher()
>>> cache['test'] = True
>>> cache['test']
True
>>> 'test' in cache
True
>>> cache['test2'] = 2
>>> 'test2' in cache
True
>>> cache['test3'] = 'three'
>>> 'test3' in cache
True
>>> cache['test3']
'three'
>>> 'test' in cache
True
class lump.cache.DummyCacher[source]

Bases: object

>>> cache = DummyCacher()
>>> cache['test'] = True
>>> print(cache['test'])
Traceback (most recent call last):
...
KeyError: 'test'
>>> 'test' in cache
False
>>> cache['test2'] = 2
>>> 'test2' in cache
False
class lump.cache.FileCacher(path, timeout=None, hasher=None, version=None)[source]

Bases: object

suffix = '.cache'
class lump.cache.LocalCacher(max_items=None)[source]

Bases: object

Simple ‘Local’ cacher with a maximum amount of items

>>> cache = LocalCacher(2)
>>> cache.max_items
2
>>> cache['test'] = True
>>> cache['test']
True
>>> 'test' in cache
True
>>> cache['test2'] = 2
>>> 'test2' in cache
True
>>> cache['test3'] = 'three'
>>> 'test3' in cache
True
>>> cache['test3']
'three'
>>> 'test' in cache
False
>>> cache['test']
Traceback (most recent call last):
...
KeyError: 'test'
class lump.cache.OptimizedFileCacher(path, max_local_items=None, *args, **kwargs)[source]

Bases: lump.cache.CacheProxy

class lump.cache.WrapperCacher(obj, timeout=None, version=None)[source]

Bases: object

Wrapper class for cache classes that use .get, .set and .has_key methods instead of item assignments, eg. django FileBasedClass