summaryrefslogtreecommitdiff
path: root/persistent.py
diff options
context:
space:
mode:
authorScott <[email protected]>2022-01-26 21:34:26 -0800
committerScott <[email protected]>2022-01-26 21:34:26 -0800
commit36fea7f15ed17150691b5b3ead75450e575229ef (patch)
tree883ec076d7abe7683231244d27ca2c603ffcf031 /persistent.py
parenta0c6b6c28214e0f5167bc25690ada5d83d933086 (diff)
Ran black code formatter on everything.
Diffstat (limited to 'persistent.py')
-rw-r--r--persistent.py52
1 files changed, 31 insertions, 21 deletions
diff --git a/persistent.py b/persistent.py
index 8829d6d..5c2b132 100644
--- a/persistent.py
+++ b/persistent.py
@@ -20,6 +20,7 @@ class Persistent(ABC):
and implement their save() and load() methods.
"""
+
@abstractmethod
def save(self) -> bool:
"""
@@ -65,15 +66,15 @@ def was_file_written_today(filename: str) -> bool:
mtime = file_utils.get_file_mtime_as_datetime(filename)
now = datetime.datetime.now()
return (
- mtime.month == now.month and
- mtime.day == now.day and
- mtime.year == now.year
+ mtime.month == now.month
+ and mtime.day == now.day
+ and mtime.year == now.year
)
def was_file_written_within_n_seconds(
- filename: str,
- limit_seconds: int,
+ filename: str,
+ limit_seconds: int,
) -> bool:
"""Returns True if filename was written within the pas limit_seconds
seconds.
@@ -93,9 +94,10 @@ class PersistAtShutdown(enum.Enum):
to disk. See details below.
"""
- NEVER = 0,
- IF_NOT_LOADED = 1,
- ALWAYS = 2,
+
+ NEVER = (0,)
+ IF_NOT_LOADED = (1,)
+ ALWAYS = (2,)
class persistent_autoloaded_singleton(object):
@@ -118,10 +120,12 @@ class persistent_autoloaded_singleton(object):
implementation.
"""
+
def __init__(
- self,
- *,
- persist_at_shutdown: PersistAtShutdown = PersistAtShutdown.IF_NOT_LOADED):
+ self,
+ *,
+ persist_at_shutdown: PersistAtShutdown = PersistAtShutdown.IF_NOT_LOADED,
+ ):
self.persist_at_shutdown = persist_at_shutdown
self.instance = None
@@ -140,27 +144,33 @@ class persistent_autoloaded_singleton(object):
# Otherwise, try to load it from persisted state.
was_loaded = False
- logger.debug(f'Attempting to load {cls.__name__} from persisted state.')
+ logger.debug(
+ f'Attempting to load {cls.__name__} from persisted state.'
+ )
self.instance = cls.load()
if not self.instance:
msg = 'Loading from cache failed.'
logger.warning(msg)
- logger.debug(f'Attempting to instantiate {cls.__name__} directly.')
+ logger.debug(
+ f'Attempting to instantiate {cls.__name__} directly.'
+ )
self.instance = cls(*args, **kwargs)
else:
- logger.debug(f'Class {cls.__name__} was loaded from persisted state successfully.')
+ logger.debug(
+ f'Class {cls.__name__} was loaded from persisted state successfully.'
+ )
was_loaded = True
assert self.instance is not None
- if (
- self.persist_at_shutdown is PersistAtShutdown.ALWAYS or
- (
- not was_loaded and
- self.persist_at_shutdown is PersistAtShutdown.IF_NOT_LOADED
- )
+ if self.persist_at_shutdown is PersistAtShutdown.ALWAYS or (
+ not was_loaded
+ and self.persist_at_shutdown is PersistAtShutdown.IF_NOT_LOADED
):
- logger.debug('Scheduling a deferred called to save at process shutdown time.')
+ logger.debug(
+ 'Scheduling a deferred called to save at process shutdown time.'
+ )
atexit.register(self.instance.save)
return self.instance
+
return _load