rewritting the dating optimization services management (refs #319)

This commit is contained in:
Romain Bignon 2010-11-11 01:11:55 +01:00
commit fcabbbe19f
5 changed files with 229 additions and 81 deletions

View file

@ -35,6 +35,8 @@ class ProfilesWalker(Optimization):
self.browser = browser
self.logger = getLogger('walker', browser.logger)
self.walk_cron = None
self.view_cron = None
self.visited_profiles = set(storage.get('profiles_walker', 'viewed'))
self.logger.info(u'Loaded %d already visited profiles from storage.' % len(self.visited_profiles))
self.profiles_queue = set()
@ -54,6 +56,9 @@ class ProfilesWalker(Optimization):
# self.event = None
return False
def is_running(self):
return self.walk_cron is not None
def enqueue_profiles(self):
try:
with self.browser:

View file

@ -29,6 +29,7 @@ class Visibility(Optimization):
def __init__(self, sched, browser):
self.sched = sched
self.browser = browser
self.cron = None
def start(self):
self.cron = self.sched.repeat(60*5, self.reconnect)
@ -38,6 +39,9 @@ class Visibility(Optimization):
# TODO
return False
def is_running(self):
return self.cron is not None
def reconnect(self):
try:
AuMBrowser(self.browser.username,