diff options
Diffstat (limited to 'src/async/imap/MCIMAPCapabilityOperation.cpp')
-rw-r--r-- | src/async/imap/MCIMAPCapabilityOperation.cpp | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/async/imap/MCIMAPCapabilityOperation.cpp b/src/async/imap/MCIMAPCapabilityOperation.cpp new file mode 100644 index 00000000..9edb9b1c --- /dev/null +++ b/src/async/imap/MCIMAPCapabilityOperation.cpp @@ -0,0 +1,43 @@ +// +// MCIMAPCapabilityOperation.cpp +// mailcore2 +// +// Created by DINH Viêt Hoà on 3/4/13. +// Copyright (c) 2013 MailCore. All rights reserved. +// + +#include "MCIMAPCapabilityOperation.h" + +#include "MCIMAPSession.h" +#include "MCIMAPAsyncConnection.h" + +using namespace mailcore; + +IMAPCapabilityOperation::IMAPCapabilityOperation() +{ + mCapabilities = NULL; +} + +IMAPCapabilityOperation::~IMAPCapabilityOperation() +{ + MC_SAFE_RELEASE(mCapabilities); +} + +IndexSet * IMAPCapabilityOperation::capabilities() +{ + return mCapabilities; +} + +void IMAPCapabilityOperation::main() +{ + ErrorCode error; + session()->session()->loginIfNeeded(&error); + if (error != ErrorNone) { + setError(error); + return; + } + mCapabilities = session()->session()->capability(&error); + MC_SAFE_RETAIN(mCapabilities); + setError(error); +} + |