aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/async/pop/MCPOPOperation.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/async/pop/MCPOPOperation.h')
-rw-r--r--src/async/pop/MCPOPOperation.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/async/pop/MCPOPOperation.h b/src/async/pop/MCPOPOperation.h
new file mode 100644
index 00000000..9fcc6af6
--- /dev/null
+++ b/src/async/pop/MCPOPOperation.h
@@ -0,0 +1,46 @@
+//
+// MCPOPOperation.h
+// mailcore2
+//
+// Created by DINH Viêt Hoà on 1/16/13.
+// Copyright (c) 2013 MailCore. All rights reserved.
+//
+
+#ifndef __mailcore2__MCPOPOperation__
+#define __mailcore2__MCPOPOperation__
+
+#include <mailcore/MCBaseTypes.h>
+#include <mailcore/MCPOPProgressCallback.h>
+
+namespace mailcore {
+
+ class POPAsyncSession;
+ class POPOperationCallback;
+
+ class POPOperation : public Operation, public POPProgressCallback {
+ POPAsyncSession * mSession;
+ POPOperationCallback * mPopCallback;
+ ErrorCode mError;
+ private:
+ virtual void bodyProgress(POPSession * session, unsigned int current, unsigned int maximum);
+ virtual void bodyProgressOnMainThread(void * context);
+
+ public:
+ POPOperation();
+ virtual ~POPOperation();
+
+ virtual void setSession(POPAsyncSession * session);
+ virtual POPAsyncSession * session();
+
+ virtual void setPopCallback(POPOperationCallback * callback);
+ virtual POPOperationCallback * popCallback();
+
+ virtual void setError(ErrorCode error);
+ virtual ErrorCode error();
+
+ virtual void start();
+ };
+
+}
+
+#endif /* defined(__mailcore2__MCPOPOperation__) */