summaryrefslogtreecommitdiffstats
path: root/examples/imapresource/imapserverproxy.h
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2017-01-10 11:28:53 +0100
committerChristian Mollekopf <chrigi_1@fastmail.fm>2017-01-10 11:28:53 +0100
commit8e84c8a78b7e308cc2b09241af649851036d11de (patch)
treee4b8b964aa7400e9f1d88b04cadcabb423e039dd /examples/imapresource/imapserverproxy.h
parent5064e5c9a705365524321e01686e73ac1bdf28a0 (diff)
downloadsink-8e84c8a78b7e308cc2b09241af649851036d11de.tar.gz
sink-8e84c8a78b7e308cc2b09241af649851036d11de.zip
Improved imap mail sync algorithm.
* when requesting individual mails we sync the full content * when requesting individual folders we get 2 weeks of full content + headers for everything else. * when requesting a sync for all folders we only get 2 weeks of full content. Getting the headers for 50k messages takes about 180s on my system with kolabnow (network being the bottleneck), so that's managable. Getting the full content would take in the range of hours. This way we have something to show, and a way to request more data, without making the system overly complex yet. Certainly not the final solution, but a good start.
Diffstat (limited to 'examples/imapresource/imapserverproxy.h')
-rw-r--r--examples/imapresource/imapserverproxy.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/examples/imapresource/imapserverproxy.h b/examples/imapresource/imapserverproxy.h
index fa2d022..140c5b2 100644
--- a/examples/imapresource/imapserverproxy.h
+++ b/examples/imapresource/imapserverproxy.h
@@ -163,7 +163,7 @@ public:
163 KAsync::Job<void> fetchFolders(std::function<void(const Folder &)> callback); 163 KAsync::Job<void> fetchFolders(std::function<void(const Folder &)> callback);
164 KAsync::Job<void> fetchMessages(const Folder &folder, std::function<void(const Message &)> callback, std::function<void(int, int)> progress = std::function<void(int, int)>()); 164 KAsync::Job<void> fetchMessages(const Folder &folder, std::function<void(const Message &)> callback, std::function<void(int, int)> progress = std::function<void(int, int)>());
165 KAsync::Job<void> fetchMessages(const Folder &folder, qint64 uidNext, std::function<void(const Message &)> callback, std::function<void(int, int)> progress = std::function<void(int, int)>()); 165 KAsync::Job<void> fetchMessages(const Folder &folder, qint64 uidNext, std::function<void(const Message &)> callback, std::function<void(int, int)> progress = std::function<void(int, int)>());
166 KAsync::Job<void> fetchMessages(const Folder &folder, const QVector<qint64> &uidsToFetch, std::function<void(const Message &)> callback, std::function<void(int, int)> progress); 166 KAsync::Job<void> fetchMessages(const Folder &folder, const QVector<qint64> &uidsToFetch, bool headersOnly, std::function<void(const Message &)> callback, std::function<void(int, int)> progress);
167 KAsync::Job<SelectResult> fetchFlags(const Folder &folder, const KIMAP2::ImapSet &set, qint64 changedsince, std::function<void(const Message &)> callback); 167 KAsync::Job<SelectResult> fetchFlags(const Folder &folder, const KIMAP2::ImapSet &set, qint64 changedsince, std::function<void(const Message &)> callback);
168 KAsync::Job<QVector<qint64>> fetchUids(const Folder &folder); 168 KAsync::Job<QVector<qint64>> fetchUids(const Folder &folder);
169 169