return sleepresult
class AccountSynchronizationMixin:
- def __init__(self, config, name, folderhash, folderhashlock):
- Account.__init__(self, config, name)
- self.folderhash = folderhash
- self.folderhashlock = folderhashlock
- self.folderhashlock.acquire()
- try:
- self.folderhash[name] = {}
- finally:
- self.folderhashlock.release()
-
def syncrunner(self):
self.ui.registerthread(self.name)
self.ui.acct(self.name)
# Connect to the local cache.
self.statusrepos = offlineimap.repository.LocalStatus.LocalStatusRepository(self.getconf('localrepository'), self)
-
- # FIXME: need new UI here?
- self.ui.syncfolders(self.remoterepos, self.localrepos)
- srcfolders = self.remoterepos.getfolders()
- destfolders = self.localrepos.getfolders()
-
- self.folderhashlock.acquire()
- try:
- self.folderhash[name] = {'src': srcfolders, 'dest': destfolders}
- self.folderhash['___sem'].release()
- finally:
- self.folderhashlock.release()
if not self.refreshperiod:
self.sync()