diff options
author | 2013-09-24 20:29:24 -0600 | |
---|---|---|
committer | 2013-09-24 20:29:24 -0600 | |
commit | 95b6c6ac75ecf66eb8d627a5ea4925057a27f7f7 (patch) | |
tree | b75c88d69b2c418a0cb220c7af8ab5f33280801f /src/async | |
parent | 3266aa128784d29c34819d745a6d4aa768f2a725 (diff) |
Implement IMAP noop
Diffstat (limited to 'src/async')
-rwxr-xr-x | src/async/imap/MCIMAPAsyncConnection.cc | 9 | ||||
-rwxr-xr-x | src/async/imap/MCIMAPAsyncConnection.h | 2 | ||||
-rwxr-xr-x | src/async/imap/MCIMAPAsyncSession.cc | 6 | ||||
-rwxr-xr-x | src/async/imap/MCIMAPAsyncSession.h | 2 | ||||
-rw-r--r-- | src/async/imap/MCIMAPNoopOperation.cpp | 29 | ||||
-rw-r--r-- | src/async/imap/MCIMAPNoopOperation.h | 31 |
6 files changed, 79 insertions, 0 deletions
diff --git a/src/async/imap/MCIMAPAsyncConnection.cc b/src/async/imap/MCIMAPAsyncConnection.cc index f4e6b73b..db6afe9a 100755 --- a/src/async/imap/MCIMAPAsyncConnection.cc +++ b/src/async/imap/MCIMAPAsyncConnection.cc @@ -34,6 +34,7 @@ #include "MCIMAPQuotaOperation.h" #include "MCOperationQueueCallback.h" #include "MCIMAPDisconnectOperation.h" +#include "MCIMAPNoopOperation.h" #include "MCIMAPAsyncSession.h" #include "MCConnectionLogger.h" #include "MCIMAPMessageRenderingOperation.h" @@ -504,6 +505,14 @@ IMAPOperation * IMAPAsyncConnection::checkAccountOperation() return op; } +IMAPOperation * IMAPAsyncConnection::noopOperation() +{ + IMAPNoopOperation * op = new IMAPNoopOperation(); + op->setSession(this); + op->autorelease(); + return op; +} + IMAPCapabilityOperation * IMAPAsyncConnection::capabilityOperation() { IMAPCapabilityOperation * op = new IMAPCapabilityOperation(); diff --git a/src/async/imap/MCIMAPAsyncConnection.h b/src/async/imap/MCIMAPAsyncConnection.h index 934180fd..a1950fd8 100755 --- a/src/async/imap/MCIMAPAsyncConnection.h +++ b/src/async/imap/MCIMAPAsyncConnection.h @@ -126,6 +126,8 @@ namespace mailcore { virtual IMAPOperation * connectOperation(); virtual IMAPOperation * checkAccountOperation(); + virtual IMAPOperation * noopOperation(); + virtual IMAPCapabilityOperation * capabilityOperation(); virtual IMAPQuotaOperation * quotaOperation(); diff --git a/src/async/imap/MCIMAPAsyncSession.cc b/src/async/imap/MCIMAPAsyncSession.cc index 7e791ce9..c388e352 100755 --- a/src/async/imap/MCIMAPAsyncSession.cc +++ b/src/async/imap/MCIMAPAsyncSession.cc @@ -472,6 +472,12 @@ IMAPQuotaOperation * IMAPAsyncSession::quotaOperation() return session->quotaOperation(); } +IMAPOperation * IMAPAsyncSession::noopOperation() +{ + IMAPAsyncConnection * session = sessionForFolder(MCSTR("INBOX")); + return session->noopOperation(); +} + void IMAPAsyncSession::setConnectionLogger(ConnectionLogger * logger) { mConnectionLogger = logger; diff --git a/src/async/imap/MCIMAPAsyncSession.h b/src/async/imap/MCIMAPAsyncSession.h index 33362e01..f0f2bd11 100755 --- a/src/async/imap/MCIMAPAsyncSession.h +++ b/src/async/imap/MCIMAPAsyncSession.h @@ -144,6 +144,8 @@ namespace mailcore { virtual IMAPCapabilityOperation * capabilityOperation(); virtual IMAPQuotaOperation * quotaOperation(); + virtual IMAPOperation * noopOperation(); + virtual IMAPMessageRenderingOperation * htmlRenderingOperation(IMAPMessage * message, String * folder); virtual IMAPMessageRenderingOperation * htmlBodyRenderingOperation(IMAPMessage * message, String * folder); virtual IMAPMessageRenderingOperation * plainTextRenderingOperation(IMAPMessage * message, String * folder); diff --git a/src/async/imap/MCIMAPNoopOperation.cpp b/src/async/imap/MCIMAPNoopOperation.cpp new file mode 100644 index 00000000..19a82883 --- /dev/null +++ b/src/async/imap/MCIMAPNoopOperation.cpp @@ -0,0 +1,29 @@ +// +// MCIMAPNoopOperation.cpp +// mailcore2 +// +// Created by Robert Widmann on 9/24/13. +// Copyright (c) 2013 MailCore. All rights reserved. +// + +#include "MCIMAPNoopOperation.h" + +#include "MCIMAPSession.h" +#include "MCIMAPAsyncConnection.h" + +using namespace mailcore; + +IMAPNoopOperation::IMAPNoopOperation() +{ +} + +IMAPNoopOperation::~IMAPNoopOperation() +{ +} + +void IMAPNoopOperation::main() +{ + ErrorCode error; + session()->session()->noop(&error); + setError(error); +} diff --git a/src/async/imap/MCIMAPNoopOperation.h b/src/async/imap/MCIMAPNoopOperation.h new file mode 100644 index 00000000..4ceff687 --- /dev/null +++ b/src/async/imap/MCIMAPNoopOperation.h @@ -0,0 +1,31 @@ +// +// MCIMAPNoopOperation.h +// mailcore2 +// +// Created by Robert Widmann on 9/24/13. +// Copyright (c) 2013 MailCore. All rights reserved. +// + +#ifndef __MAILCORE_MCIMAPNOOPOPERATION_H_ + +#define __MAILCORE_MCIMAPNOOPOPERATION_H_ + +#include <MailCore/MCIMAPOperation.h> + +#ifdef __cplusplus + +namespace mailcore { + + class IMAPNoopOperation : public IMAPOperation { + public: + IMAPNoopOperation(); + virtual ~IMAPNoopOperation(); + + public: // subclass behavior + virtual void main(); + }; +} + +#endif + +#endif |