aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/async/imap/MCIMAPFolderInfoOperation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/async/imap/MCIMAPFolderInfoOperation.cpp')
-rw-r--r--src/async/imap/MCIMAPFolderInfoOperation.cpp54
1 files changed, 13 insertions, 41 deletions
diff --git a/src/async/imap/MCIMAPFolderInfoOperation.cpp b/src/async/imap/MCIMAPFolderInfoOperation.cpp
index 0ea0d005..fc4e4462 100644
--- a/src/async/imap/MCIMAPFolderInfoOperation.cpp
+++ b/src/async/imap/MCIMAPFolderInfoOperation.cpp
@@ -10,51 +10,23 @@
#include "MCIMAPSession.h"
#include "MCIMAPAsyncConnection.h"
+#include "MCIMAPFolderInfo.h"
using namespace mailcore;
IMAPFolderInfoOperation::IMAPFolderInfoOperation()
{
- mUidNext = 0;
- mUidValidity = 0;
- mMessageCount = 0;
- mModSequenceValue = 0;
- mFirstUnseenUid = 0;
- mAllowsNewPermanentFlags = false;
+ mInfo = NULL;
}
IMAPFolderInfoOperation::~IMAPFolderInfoOperation()
{
+ MC_SAFE_RELEASE(mInfo);
}
-uint32_t IMAPFolderInfoOperation::uidNext()
+IMAPFolderInfo * IMAPFolderInfoOperation::info()
{
- return mUidNext;
-}
-
-uint32_t IMAPFolderInfoOperation::uidValidity()
-{
- return mUidValidity;
-}
-
-uint64_t IMAPFolderInfoOperation::modSequenceValue()
-{
- return mModSequenceValue;
-}
-
-int IMAPFolderInfoOperation::messageCount()
-{
- return mMessageCount;
-}
-
-uint32_t IMAPFolderInfoOperation::firstUnseenUid()
-{
- return mFirstUnseenUid;
-}
-
-bool IMAPFolderInfoOperation::allowsNewPermanentFlags()
-{
- return mAllowsNewPermanentFlags;
+ return mInfo;
}
void IMAPFolderInfoOperation::main()
@@ -73,14 +45,14 @@ void IMAPFolderInfoOperation::main()
return;
}
-
- mUidNext = session()->session()->uidNext();
- mUidValidity = session()->session()->uidValidity();
- mModSequenceValue = session()->session()->modSequenceValue();
- mMessageCount = session()->session()->lastFolderMessageCount();
- mFirstUnseenUid = session()->session()->firstUnseenUid();
- mAllowsNewPermanentFlags = session()->session()->allowsNewPermanentFlags();
-
+ mInfo = new IMAPFolderInfo();
+ mInfo->setUidNext(session()->session()->uidNext());
+ mInfo->setUidValidity(session()->session()->uidValidity());
+ mInfo->setModSequenceValue(session()->session()->modSequenceValue());
+ mInfo->setMessageCount(session()->session()->lastFolderMessageCount());
+ mInfo->setFirstUnseenUid(session()->session()->firstUnseenUid());
+ mInfo->setAllowsNewPermanentFlags(session()->session()->allowsNewPermanentFlags());
+
setError(error);
}