[core] Allow modules to specify default update interval
Expanding on the implementation in d582016
, add a decorator
`core.module.every()` that allows a module to specify how often to
update the module's state.
This can still be overridden using the CLI parameter `interval`.
This commit is contained in:
parent
b66b13211e
commit
bd7ff3c8f1
3 changed files with 18 additions and 0 deletions
|
@ -12,6 +12,15 @@ except Exception as e:
|
|||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
def every(minutes=0, seconds=0):
|
||||
def decorator_init(init):
|
||||
def call_init(obj, *args, **kwargs):
|
||||
init(obj, *args, **kwargs)
|
||||
if obj.parameter('interval') is None:
|
||||
obj.set('interval', minutes*60 + seconds)
|
||||
return call_init
|
||||
return decorator_init
|
||||
|
||||
def load(module_name, config=None):
|
||||
error = None
|
||||
for namespace in [ 'core', 'contrib' ]:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue