Resource storage
Similar to setuptools.pkg_resources, but with extended functionality
-
class
pyaltt2.res.
ResourceStorage
(resource_dir='.', mod=None) Resource storage loader
Usage example:
from pyaltt.res import ResourceStorage from functools import partial
rs = ResourceStorage(mod=mymod)
rq = partial(rs.get, resource_subdir=’sql’, ext=’sql’)
rq(‘object.select.data’) - will load resource from (will try all variations until file is found):
- sql/object.select.data.sql
- sql/object/select.data.sql
- sql/object/select/data.sql
Resource is loaded once and cached forever.
init resource storage for module
If module is specified, set directory to module_dir/resources
Parameters: - resource_dir – resource directory or
- mod – module name
Raises: LookupError
– if module name is specified, but module is not found-
get
Get resource
Loads resource from resource storage directory
Parameters: - resource_id – resource id. dots are replaced with “/” automatically until resource is found
- resource_subdir – resource sub directory
- ext – resource extension
- mode – file open mode (default: “r”, use “rb” for binary data)
- default – return default value if resource is not found
Raises: LookupError
– if resource is not found and no default value provided