Files
@ 744479013d7a
Branch filter:
Location: NPO-Accounting/oxrlib/oxrlib/loaders.py - annotation
744479013d7a
598 B
text/x-python
loaders: Introduce common exceptions.
744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a 744479013d7a d1ba2dbc6a33 d1ba2dbc6a33 d1ba2dbc6a33 d1ba2dbc6a33 d1ba2dbc6a33 d1ba2dbc6a33 d1ba2dbc6a33 744479013d7a 744479013d7a 744479013d7a 744479013d7a | class LoaderError(Exception):
pass
class LoaderNoDataError(LoaderError):
pass
class LoaderBadRequestError(LoaderError):
pass
class LoaderSourceError(LoaderError):
pass
class FileCache:
def __init__(self, dir_path, filename_pattern):
self.dir_path = dir_path
self.pattern = filename_pattern
def historical(self, date, base):
path = self.dir_path / self.pattern.format(date=date.isoformat(), base=base)
try:
return path.open()
except FileNotFoundError as error:
raise LoaderNoDataError(path) from error
|