5.6.6.2. vlcp.service.utils.knowledge¶
Note
This document is generated from the source file.
Created on 2015/11/9
| author: | hubo |
|---|
-
class
vlcp.service.utils.knowledge.Knowledge(server)¶ Simple KV-cache in memory. A base for other KV-DB. Data is automatically removed after timeout. Use knowledge instead of local storage in modules so data is not lost on module restarting.
-
__init__(server)¶ Constructor
-
delete(key)¶ Delete a key
-
get(key, timeout=None)¶ Get value from key
-
mget(keys)¶ Get multiple values from multiple keys
-
mgetwithcache(keys, cache=None)¶ Get multiple values, cached when possible
-
mset(kvpairs, timeout=None)¶ Set multiple values on multiple keys
-
mupdate(keys, updater, timeout=None)¶ Update multiple keys in-place one by one with a custom function, see update. Either all success, or all fail.
-
set(key, value, timeout=None)¶ Set value to key, with an optional timeout
-
update(key, updater, timeout=None)¶ Update in-place with a custom function
Parameters: - key – key to update
- updater –
func(k,v), should return a new value to update, or return None to delete - timeout – new timeout
Returns: the updated value, or None if deleted
-
updateall(keys, updater, timeout=None)¶ Update multiple keys in-place, with a function
updater(keys, values)which returns(updated_keys, updated_values). Either all success or all fail
-
updateallwithtime(keys, updater, timeout=None)¶ Update multiple keys in-place, with a function
updater(keys, values, timestamp)which returns(updated_keys, updated_values). Either all success or all fail.Timestamp is a integer standing for current time in microseconds.
-
-
class
vlcp.service.utils.knowledge.MemoryStorage(server)¶
-
vlcp.service.utils.knowledge.escape_key(k)¶ Escape k, ensuring there is not a ‘.’ in the string.
-
vlcp.service.utils.knowledge.return_self_updater(func)¶ Run func, but still return v. Useful for using knowledge.update with operates like append, extend, etc. e.g. return_self(lambda k,v: v.append(‘newobj’))
-
vlcp.service.utils.knowledge.unescape_key(k)¶ Unescape key to get ‘.’ back