projects
/
kiosk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Format codebase w/ black.
[kiosk.git]
/
renderer.py
diff --git
a/renderer.py
b/renderer.py
index e5fbbaa2d3cd59f278baa4bc369fbfa3705bc520..2be7780c1c85ec02808abea8eb55fbd00fdbea57 100644
(file)
--- a/
renderer.py
+++ b/
renderer.py
@@
-1,18
+1,24
@@
import time
from datetime import datetime
import time
from datetime import datetime
+from decorators import invokation_logged
+
class renderer(object):
"""Base class for something that can render."""
class renderer(object):
"""Base class for something that can render."""
+
+ @invokation_logged
def render(self):
pass
def get_name(self):
return self.__class__.__name__
def render(self):
pass
def get_name(self):
return self.__class__.__name__
+
class abstaining_renderer(renderer):
"""A renderer that doesn't do it all the time."""
class abstaining_renderer(renderer):
"""A renderer that doesn't do it all the time."""
+
def __init__(self, name_to_timeout_dict):
def __init__(self, name_to_timeout_dict):
- self.name_to_timeout_dict = name_to_timeout_dict
;
+ self.name_to_timeout_dict = name_to_timeout_dict
self.last_runs = {}
for key in name_to_timeout_dict:
self.last_runs[key] = 0
self.last_runs = {}
for key in name_to_timeout_dict:
self.last_runs[key] = 0
@@
-20,8
+26,9
@@
class abstaining_renderer(renderer):
def should_render(self, keys_to_skip):
now = time.time()
for key in self.name_to_timeout_dict:
def should_render(self, keys_to_skip):
now = time.time()
for key in self.name_to_timeout_dict:
- if (((now - self.last_runs[key]) > self.name_to_timeout_dict[key]) and
- key not in keys_to_skip):
+ if (
+ (now - self.last_runs[key]) > self.name_to_timeout_dict[key]
+ ) and key not in keys_to_skip:
return key
return None
return key
return None
@@
-39,23
+46,27
@@
class abstaining_renderer(renderer):
tries_per_key[key] = 0
if tries_per_key[key] >= 3:
tries_per_key[key] = 0
if tries_per_key[key] >= 3:
- print('renderer: Too many failures for "%s.%s", giving up' % (
- self.get_name(), key))
+ print(
+ 'renderer: Too many failures for "%s.%s", giving up'
+ % (self.get_name(), key)
+ )
keys_to_skip.add(key)
else:
msg = 'renderer: executing "%s.%s"' % (self.get_name(), key)
keys_to_skip.add(key)
else:
msg = 'renderer: executing "%s.%s"' % (self.get_name(), key)
- if
(tries_per_key[key] > 1)
:
+ if
tries_per_key[key] > 1
:
msg = msg + " (retry #%d)" % tries_per_key[key]
print(msg)
msg = msg + " (retry #%d)" % tries_per_key[key]
print(msg)
- if
(self.periodic_render(key)
):
+ if
self.periodic_render(key
):
self.last_runs[key] = time.time()
self.last_runs[key] = time.time()
+ @invokation_logged
def periodic_render(self, key):
pass
def periodic_render(self, key):
pass
+
class debuggable_abstaining_renderer(abstaining_renderer):
def __init__(self, name_to_timeout_dict, debug):
class debuggable_abstaining_renderer(abstaining_renderer):
def __init__(self, name_to_timeout_dict, debug):
- super(debuggable_abstaining_renderer, self).__init__(name_to_timeout_dict)
;
+ super(debuggable_abstaining_renderer, self).__init__(name_to_timeout_dict)
self.debug = debug
def debug_prefix(self):
self.debug = debug
def debug_prefix(self):