diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2017-03-20 09:33:42 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2017-03-20 09:58:00 +0100 |
commit | c3ba13d4240005cb9e7bdaca5977114e74bd0e9a (patch) | |
tree | 1ee5d114c6ac0c9680106059b48c22b3d65e99ff /framework/domain/foldercontroller.cpp | |
parent | 4b501d7c7bb37423a3963b85a74e804e22368095 (diff) | |
download | kube-c3ba13d4240005cb9e7bdaca5977114e74bd0e9a.tar.gz kube-c3ba13d4240005cb9e7bdaca5977114e74bd0e9a.zip |
Support synchronizing individual accounts
Diffstat (limited to 'framework/domain/foldercontroller.cpp')
-rw-r--r-- | framework/domain/foldercontroller.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/framework/domain/foldercontroller.cpp b/framework/domain/foldercontroller.cpp index 65c34dba..3c10f773 100644 --- a/framework/domain/foldercontroller.cpp +++ b/framework/domain/foldercontroller.cpp | |||
@@ -36,11 +36,14 @@ FolderController::FolderController() | |||
36 | void FolderController::synchronize() | 36 | void FolderController::synchronize() |
37 | { | 37 | { |
38 | auto job = [&] { | 38 | auto job = [&] { |
39 | auto accountId = getAccountId(); | ||
39 | if (auto folder = getFolder()) { | 40 | if (auto folder = getFolder()) { |
40 | SinkLog() << "Synchronizing folder " << folder->resourceInstanceIdentifier() << folder->identifier(); | 41 | SinkLog() << "Synchronizing folder " << folder->resourceInstanceIdentifier() << folder->identifier(); |
41 | auto scope = SyncScope().resourceFilter(folder->resourceInstanceIdentifier()).filter<ApplicationDomain::Mail::Folder>(QVariant::fromValue(folder->identifier())); | 42 | auto scope = SyncScope().resourceFilter(folder->resourceInstanceIdentifier()).filter<ApplicationDomain::Mail::Folder>(QVariant::fromValue(folder->identifier())); |
42 | scope.setType<ApplicationDomain::Mail>(); | 43 | scope.setType<ApplicationDomain::Mail>(); |
43 | return Store::synchronize(scope); | 44 | return Store::synchronize(scope); |
45 | } else if (!accountId.isEmpty()) { | ||
46 | return Store::synchronize(SyncScope{}.resourceFilter<ApplicationDomain::SinkResource::Account>(accountId)); | ||
44 | } else { | 47 | } else { |
45 | SinkLog() << "Synchronizing all"; | 48 | SinkLog() << "Synchronizing all"; |
46 | return Store::synchronize(SyncScope()); | 49 | return Store::synchronize(SyncScope()); |