store.backends.base¶
Base store backend interface.
Module Contents¶
Classes¶
Object representing resource metadata. |
|
Cached information about an already downloaded resource. |
|
Abstract base class for resource store backends. |
Attributes¶
- store.backends.base.logger¶
- class store.backends.base.ResourceInfo¶
Object representing resource metadata.
This is subclassed by all store drivers.
- abstract uid() str¶
Return an unique identifier.
This is meant to be used to implement a cache system.
- abstract verify(resource_path: str) bool¶
Verify that a downloaded resource is valid.
This is meant to validate the resource fingerprint (e.g. sha1sum). :param resource_path: path to the downloaded resource
- class store.backends.base.CachedResource¶
Bases:
NamedTupleCached information about an already downloaded resource.
- uid: str¶
- local_path: str¶
- exception store.backends.base.StoreError(message: str | list[str], origin: str | None = None)¶
Bases:
e3.error.E3ErrorException raised for store operations errors.
- class store.backends.base.Store(store_configuration: Any, cache_backend: e3.store.cache.backends.base.Cache)¶
Abstract base class for resource store backends.
- abstract get_resource_metadata(query: dict) ResourceInfo¶
Get a resource metadata from query.
- Parameters:
query – a dictionary containing store specific queries to identify a resource
- download_resource(metadata: ResourceInfo, dest: str) str | None¶
Download a resource identified by its metadata in dest.
- Parameters:
metadata – resource metadata
dest – directory where the resource will be stored
- Returns:
resource path
- abstract download_resource_content(metadata: ResourceInfo, dest: str) str | None¶
Download a resource identified by its metadata in dest.
The resource is supposed to be validated with metadata.verify once the download is completed.
- Parameters:
metadata – resource metadata
dest – directory where the resource will be stored
- Returns:
resource path