linkahead.cached module
This module provides some cached versions of functions that retrieve Entities from a remote server.
See also
-, -, -, -, id,
- class linkahead.cached.AccessType(value)
Bases:
EnumDifferent access types for cached queries. Needed for filling the cache manually with
cache_fill().- EID = 3
- NAME = 4
- PATH = 2
- QUERY = 1
- linkahead.cached.cache_clear() None
Empty the cache that is used by cached_query and cached_get_entity_by.
- linkahead.cached.cache_fill(items: dict[str | int, Any], kind: AccessType = AccessType.EID, unique: bool = True) None
Add entries to the cache manually.
This allows to fill the cache without actually submitting queries. Note that this does not overwrite existing entries with the same keys.
- Parameters:
items (dict) – A dictionary with the entries to go into the cache. The keys must be compatible with the AccessType given in
kindkind (AccessType, optional) – The AccessType, for example ID, name, path or query.
unique (bool, optional) – If True, fills the cache for
cached_get_entity_by(), presumably withlinkahead.Entityobjects. If False, the cache should be filled withlinkahead.Containerobjects, for use withcached_query().
- linkahead.cached.cache_info()
Return info about the cache that is used by cached_query and cached_get_entity_by.
- Returns:
out – See the standard library
functools.lru_cache()for details.- Return type:
named tuple
- linkahead.cached.cache_initialize(maxsize: int = 33333) None
Create a new cache with the given size for cached_query and cached_get_entity_by.
This implies a call of
cache_clear(), the old cache is emptied.
- linkahead.cached.cached_get_entity_by(eid: str | int | None = None, name: str | None = None, path: str | None = None, query: str | None = None) Entity | tuple[None]
Return a single entity that is identified uniquely by one argument.
You must supply exactly one argument.
If a query phrase is given, the result must be unique. If this is not what you need, use
cached_query()instead.
- linkahead.cached.cached_query(query_string: str) Container
A cached version of
linkahead.execute_query.All additional arguments are at their default values.