aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/async/imap/MCIMAPFetchContentToFileOperation.h
diff options
context:
space:
mode:
authorGravatar Dmitry Isaikin <isaikin-dmitry@yandex.ru>2016-06-06 04:28:53 +0400
committerGravatar HoĆ  V. DINH <dinh.viet.hoa@gmail.com>2016-06-05 17:28:53 -0700
commiteeed76e48c830fe742eadd435682f3b1e6036f83 (patch)
tree36bad63fccde47e6cdecb7033f65a3d75e1bbb71 /src/async/imap/MCIMAPFetchContentToFileOperation.h
parent6dbe79ccf3f085da9a195ee3f9a59cb4449f6505 (diff)
Add possibility of fetching message attachment by chunks and store it to file. (#1438)
Diffstat (limited to 'src/async/imap/MCIMAPFetchContentToFileOperation.h')
-rw-r--r--src/async/imap/MCIMAPFetchContentToFileOperation.h53
1 files changed, 53 insertions, 0 deletions
diff --git a/src/async/imap/MCIMAPFetchContentToFileOperation.h b/src/async/imap/MCIMAPFetchContentToFileOperation.h
new file mode 100644
index 00000000..35d7026f
--- /dev/null
+++ b/src/async/imap/MCIMAPFetchContentToFileOperation.h
@@ -0,0 +1,53 @@
+//
+// IMAPFetchContentToFileOperation.h
+// mailcore2
+//
+// Created by Dmitry Isaikin on 2/08/16.
+// Copyright (c) 2016 MailCore. All rights reserved.
+//
+
+#ifndef MAILCORE_IMAPFETCHCONTENTTOFILEOPERATION_H
+
+#define MAILCORE_IMAPFETCHCONTENTTOFILEOPERATION_H
+
+#include <MailCore/MCIMAPOperation.h>
+
+#ifdef __cplusplus
+
+namespace mailcore {
+
+ class MAILCORE_EXPORT IMAPFetchContentToFileOperation : public IMAPOperation {
+ public:
+ IMAPFetchContentToFileOperation();
+ virtual ~IMAPFetchContentToFileOperation();
+
+ virtual void setUid(uint32_t uid);
+ virtual void setPartID(String * partID);
+ virtual void setEncoding(Encoding encoding);
+ virtual void setFilename(String * filename);
+
+ virtual void setLoadingByChunksEnabled(bool loadingByChunksEnabled);
+ virtual bool isLoadingByChunksEnabled();
+ virtual void setChunksSize(uint32_t chunksSize);
+ virtual uint32_t chunksSize();
+ virtual void setEstimatedSize(uint32_t estimatedSize);
+ virtual uint32_t estimatedSize();
+
+ public: // subclass behavior
+ virtual void main();
+
+ private:
+ uint32_t mUid;
+ String * mPartID;
+ Encoding mEncoding;
+ String * mFilename;
+ bool mLoadingByChunksEnabled;
+ uint32_t mChunksSize;
+ uint32_t mEstimatedSize;
+ };
+
+}
+
+#endif
+
+#endif