cement.core.cache¶
Cement core cache module.
-
class
cement.core.cache.CementCacheHandler(*args, **kw)¶ Bases:
cement.core.handler.CementBaseHandlerBase class that all Cache Handlers should sub-class from.
-
class
cement.core.cache.ICache¶ Bases:
cement.core.interface.InterfaceThis class defines the Cache Handler Interface. Classes that implement this handler must provide the methods and attributes defined below.
Implementations do not subclass from interfaces.
Usage:
from cement.core import cache class MyCacheHandler(object): class Meta: interface = cache.ICache label = 'my_cache_handler' ...
-
class
IMeta¶ Bases:
objectInterface meta-data.
-
label= 'cache'¶ The label (or type identifier) of the interface.
-
validator(klass, obj)¶ Interface validator function.
-
-
ICache._setup(app_obj)¶ The _setup function is called during application initialization and must ‘setup’ the handler object making it ready for the framework or the application to make further calls to it.
Parameters: app_obj – The application object. Returns: None
-
ICache.delete(key)¶ Deletes a key/value from the cache.
Parameters: key – The key in the cache to delete. Returns: True if the key is successfully deleted, False otherwise. Return type: boolean
-
ICache.get(key, fallback=None)¶ Get the value for a key in the cache. If the key does not exist or the key/value in cache is expired, this functions must return ‘fallback’ (which in turn must default to None).
Parameters: - key – The key of the value stored in cache
- fallback – Optional value that is returned if the cache is expired or the key does not exist. Default: None
Returns: Unknown (whatever the value is in cache, or the fallback)
-
ICache.purge()¶ Clears all data from the cache.
-
ICache.set(key, value, time=None)¶ Set the key/value in the cache for a set amount of time.
Parameters: - key – The key of the value to store in cache.
- value – The value of that key to store in cache.
- time (
int(seconds) orNone) – A one-off expire time. If no time is given, then a default value is used (determined by the implementation).
Returns: None
-
class
-
cement.core.cache.cache_validator(klass, obj)¶ Validates a handler implementation against the ICache interface.