'Executes passes forever, looking for objects to expire.
:param args: Extra args to fulfill the Daemon interface; this daemon
has no additional args.
:param kwargs: Extra keyword args to fulfill the Daemon interface; this
daemon has no additional keyword args.'

def run_forever(self, *args, **kwargs):

    sleep((random() * self.interval))
    while True:
        begin = time()
        try:
            self.run_once(*args, **kwargs)
        except (Exception, Timeout):
            self.logger.exception(_('Unhandled    exception'))
        elapsed = (time() - begin)
        if (elapsed < self.interval):
            sleep((random() * (self.interval - elapsed)))
