#!/usr/bin/env python
"""
-@todo Look into switching from POLL_TIME = min(F * 2^n, MAX) to POLL_TIME = min(CONST + F * 2^n, MAX)
-@todo Look into supporting more states that have a different F and MAX
+@todo Look into supporting more states
"""
import logging
_moduleLogger.info("%s Starting State Machine" % (self._name, ))
def stop(self):
+ _moduleLogger.info("%s Stopping State Machine" % (self._name, ))
self._stop_update()
def close(self):
return self._state
def reset_timers(self):
+ _moduleLogger.info("%s Resetting State Machine" % (self._name, ))
self._reset_timers()
@property
@gtk_toolbox.log_exception(_moduleLogger)
def _on_timeout(self):
- _moduleLogger.debug("%s Update" % (self._name))
+ self._timeoutId = None
+ self._schedule_update()
for item in self._updateItems:
try:
item.update(force=True)
except Exception:
_moduleLogger.exception("Update failed for %r" % item)
- self._timeoutId = None
- self._schedule_update()
return False # do not continue