diff options
author | Ryan Johnson <ryan@iambismark.net> | 2013-07-02 14:30:09 -0700 |
---|---|---|
committer | Ryan Johnson <ryan@iambismark.net> | 2013-07-16 14:50:01 -0700 |
commit | 73ea92fd846adbb4e3b25d8c12c04916da25b340 (patch) | |
tree | 07b3a9316b46b6ca7b9209281e91eb9d70289f37 /src/core/imap/MCIMAPSession.h | |
parent | f5e4186da2bc1c6d88582e8f2d4c6a236e278840 (diff) |
Allows for request custom headers when fetching messages
* Defines new request kind ExtraHeaders
* Exposes extraHeaders property on fetch messages operations
* Modifies MessageHeader::importIMFFields for handling any headers
Diffstat (limited to 'src/core/imap/MCIMAPSession.h')
-rw-r--r-- | src/core/imap/MCIMAPSession.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/core/imap/MCIMAPSession.h b/src/core/imap/MCIMAPSession.h index 09732edd..82abd311 100644 --- a/src/core/imap/MCIMAPSession.h +++ b/src/core/imap/MCIMAPSession.h @@ -88,9 +88,11 @@ namespace mailcore { virtual void expunge(String * folder, ErrorCode * pError); virtual Array * /* IMAPMessage */ fetchMessagesByUID(String * folder, IMAPMessagesRequestKind requestKind, - IndexSet * uids, IMAPProgressCallback * progressCallback, ErrorCode * pError); + IndexSet * uids, IMAPProgressCallback * progressCallback, + ErrorCode * pError, Array * extraHeaders = NULL); virtual Array * /* IMAPMessage */ fetchMessagesByNumber(String * folder, IMAPMessagesRequestKind requestKind, - IndexSet * numbers, IMAPProgressCallback * progressCallback, ErrorCode * pError); + IndexSet * numbers, IMAPProgressCallback * progressCallback, + ErrorCode * pError, Array * extraHeaders = NULL); virtual Data * fetchMessageByUID(String * folder, uint32_t uid, IMAPProgressCallback * progressCallback, ErrorCode * pError); @@ -102,7 +104,8 @@ namespace mailcore { /* When CONDSTORE or QRESYNC is available */ virtual IMAPSyncResult * syncMessagesByUID(String * folder, IMAPMessagesRequestKind requestKind, IndexSet * uids, uint64_t modseq, - IMAPProgressCallback * progressCallback, ErrorCode * pError); + IMAPProgressCallback * progressCallback, ErrorCode * pError, + Array * extraHeaders = NULL); virtual void storeFlags(String * folder, IndexSet * uids, IMAPStoreFlagsRequestKind kind, MessageFlag flags, ErrorCode * pError); virtual void storeLabels(String * folder, IndexSet * uids, IMAPStoreFlagsRequestKind kind, Array * labels, ErrorCode * pError); @@ -207,9 +210,10 @@ namespace mailcore { void unsetup(); void selectIfNeeded(String * folder, ErrorCode * pError); char fetchDelimiterIfNeeded(char defaultDelimiter, ErrorCode * pError); - IMAPSyncResult * fetchMessages(String * folder, IMAPMessagesRequestKind requestKind, bool fetchByUID, - struct mailimap_set * imapset, uint64_t modseq, HashMap * mapping, uint32_t startUid, - IMAPProgressCallback * progressCallback, ErrorCode * pError); + IMAPSyncResult * fetchMessages(String * folder, IMAPMessagesRequestKind requestKind, + bool fetchByUID, struct mailimap_set * imapset, uint64_t modseq, + HashMap * mapping, uint32_t startUid, IMAPProgressCallback * progressCallback, + ErrorCode * pError, Array * extraHeaders); }; } |