Revert "Checkpointing work on mailbox deletion"
This reverts commit f58ebe390d
.
Not going to follow this path right now
This commit is contained in:
parent
f58ebe390d
commit
6790c94869
@ -95,16 +95,6 @@ class Account(CustomConfig.ConfigHelperMixin):
|
|||||||
return sleepresult
|
return sleepresult
|
||||||
|
|
||||||
class AccountSynchronizationMixin:
|
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):
|
def syncrunner(self):
|
||||||
self.ui.registerthread(self.name)
|
self.ui.registerthread(self.name)
|
||||||
self.ui.acct(self.name)
|
self.ui.acct(self.name)
|
||||||
@ -119,18 +109,6 @@ class AccountSynchronizationMixin:
|
|||||||
|
|
||||||
# Connect to the local cache.
|
# Connect to the local cache.
|
||||||
self.statusrepos = offlineimap.repository.LocalStatus.LocalStatusRepository(self.getconf('localrepository'), self)
|
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:
|
if not self.refreshperiod:
|
||||||
self.sync()
|
self.sync()
|
||||||
|
@ -26,8 +26,8 @@ import re, os, os.path, offlineimap, sys
|
|||||||
from ConfigParser import ConfigParser
|
from ConfigParser import ConfigParser
|
||||||
from threading import *
|
from threading import *
|
||||||
|
|
||||||
def syncaccount(threads, config, accountname, folderhash, folderhashlock):
|
def syncaccount(threads, config, accountname):
|
||||||
account = SyncableAccount(config, accountname, folderhash, folderhashlock)
|
account = SyncableAccount(config, accountname)
|
||||||
thread = InstanceLimitedThread(instancename = 'ACCOUNTLIMIT',
|
thread = InstanceLimitedThread(instancename = 'ACCOUNTLIMIT',
|
||||||
target = account.syncrunner,
|
target = account.syncrunner,
|
||||||
name = "Account sync %s" % accountname)
|
name = "Account sync %s" % accountname)
|
||||||
@ -36,26 +36,11 @@ def syncaccount(threads, config, accountname, folderhash, folderhashlock):
|
|||||||
threads.add(thread)
|
threads.add(thread)
|
||||||
|
|
||||||
def syncitall(accounts, config):
|
def syncitall(accounts, config):
|
||||||
folderhash = {'___sem': Semaphore(0)}
|
|
||||||
folderhashlock = Lock()
|
|
||||||
currentThread().setExitMessage('SYNC_WITH_TIMER_TERMINATE')
|
currentThread().setExitMessage('SYNC_WITH_TIMER_TERMINATE')
|
||||||
ui = UIBase.getglobalui()
|
ui = UIBase.getglobalui()
|
||||||
threads = threadutil.threadlist()
|
threads = threadutil.threadlist()
|
||||||
mbnames.init(config, accounts)
|
mbnames.init(config, accounts)
|
||||||
|
|
||||||
accountcout = 0
|
|
||||||
for accountname in accounts:
|
for accountname in accounts:
|
||||||
syncaccount(threads, config, accountname, folderhash, folderhashlock)
|
syncaccount(threads, config, accountname)
|
||||||
accountcount += 1
|
|
||||||
|
|
||||||
# Gather up folder info
|
|
||||||
for i in range(0, accountcount):
|
|
||||||
folderhash['___sem'].acquire()
|
|
||||||
|
|
||||||
# Now we can tally.
|
|
||||||
srcnames =
|
|
||||||
for accountname in accounts:
|
|
||||||
|
|
||||||
|
|
||||||
# Wait for the threads to finish.
|
# Wait for the threads to finish.
|
||||||
threads.reset()
|
threads.reset()
|
||||||
|
Loading…
Reference in New Issue
Block a user