diff -r dcf0eedfc1a3 -r d189ee25cf9d emailservices/emailcommon/src/CFSMailFolderBase.cpp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/emailservices/emailcommon/src/CFSMailFolderBase.cpp Tue Aug 31 15:04:17 2010 +0300
@@ -0,0 +1,375 @@
+/*
+* Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: common email folder base object
+*
+*/
+
+#include "emailtrace.h"
+
+//
+#include
+//
+
+//
+#include "CFSMailFolderBase.h"
+#include "nmfolder.h"
+//
+
+// ================= MEMBER FUNCTIONS ==========================================
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::CFSMailFolderBase
+// -----------------------------------------------------------------------------
+CFSMailFolderBase::CFSMailFolderBase()
+{
+ NM_FUNCTION;
+
+// unnecessary iFolderName initialization removed
+ iMoveOfflineBlocked.Reset();
+ iMoveOnlineBlocked.Reset();
+ iCopyOfflineBlocked.Reset();
+ iCopyOnlineBlocked.Reset();
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::~CFSMailFolderBase
+// -----------------------------------------------------------------------------
+EXPORT_C CFSMailFolderBase::~CFSMailFolderBase()
+{
+ NM_FUNCTION;
+
+// unnecessary iFolderName destruction removed
+ iMoveOfflineBlocked.Reset();
+ iMoveOnlineBlocked.Reset();
+ iCopyOfflineBlocked.Reset();
+ iCopyOnlineBlocked.Reset();
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::ConstructL
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::ConstructL( TFSMailMsgId aFolderId )
+{
+ NM_FUNCTION;
+
+//
+ iNmPrivateFolder = new NmFolderPrivate();
+ iNmPrivateFolder->mFolderId = aFolderId.GetNmId();
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::NewLC
+// -----------------------------------------------------------------------------
+EXPORT_C CFSMailFolderBase* CFSMailFolderBase::NewLC( TFSMailMsgId aFolderId )
+{
+ NM_FUNCTION;
+
+ CFSMailFolderBase* folder = new (ELeave) CFSMailFolderBase();
+ CleanupStack:: PushL(folder);
+ folder->ConstructL(aFolderId);
+ return folder;
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::NewL
+// -----------------------------------------------------------------------------
+EXPORT_C CFSMailFolderBase* CFSMailFolderBase::NewL(const TFSMailMsgId aFolderId)
+{
+ NM_FUNCTION;
+
+ CFSMailFolderBase* folder = CFSMailFolderBase::NewLC(aFolderId);
+ CleanupStack:: Pop(folder);
+ return folder;
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetFolderId
+// -----------------------------------------------------------------------------
+EXPORT_C TFSMailMsgId CFSMailFolderBase::GetFolderId() const
+{
+ NM_FUNCTION;
+
+//
+ return TFSMailMsgId(iNmPrivateFolder->mFolderId);
+//
+}
+
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetParentFolderId
+// -----------------------------------------------------------------------------
+EXPORT_C TFSMailMsgId CFSMailFolderBase::GetParentFolderId() const
+{
+ NM_FUNCTION;
+
+//
+ return TFSMailMsgId(iNmPrivateFolder->mParentFolderId);
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::SetParentFolderId
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::SetParentFolderId(TFSMailMsgId aFolderId)
+{
+ NM_FUNCTION;
+
+//
+ iNmPrivateFolder->mParentFolderId = aFolderId.GetNmId();
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetMailBoxId
+// -----------------------------------------------------------------------------
+EXPORT_C TFSMailMsgId CFSMailFolderBase::GetMailBoxId() const
+{
+ NM_FUNCTION;
+
+//
+ return TFSMailMsgId(iNmPrivateFolder->mMailboxId);
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::SetMailBoxId
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::SetMailBoxId(TFSMailMsgId aMailBoxId)
+{
+ NM_FUNCTION;
+
+//
+ iNmPrivateFolder->mMailboxId = aMailBoxId.GetNmId();
+//
+}
+
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetFolderType
+// -----------------------------------------------------------------------------
+EXPORT_C TFSFolderType CFSMailFolderBase::GetFolderType() const
+{
+ NM_FUNCTION;
+
+//
+ return static_cast(iNmPrivateFolder->mFolderType);
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::SetFolderType
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::SetFolderType(const TFSFolderType aFolderType)
+{
+ NM_FUNCTION;
+
+//
+ iNmPrivateFolder->mFolderType = static_cast(aFolderType);
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetFolderName
+// -----------------------------------------------------------------------------
+EXPORT_C TDesC& CFSMailFolderBase::GetFolderName() const
+{
+ NM_FUNCTION;
+
+//
+ iTextPtr.Set(
+ reinterpret_cast (iNmPrivateFolder->mName.utf16()),
+ iNmPrivateFolder->mName.length());
+ return iTextPtr;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::SetFolderName
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::SetFolderName(const TDesC& aFolderName)
+{
+ NM_FUNCTION;
+
+//
+ QString qtName = QString::fromUtf16(aFolderName.Ptr(), aFolderName.Length());
+ iNmPrivateFolder->mName = qtName;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetMessageCount
+// -----------------------------------------------------------------------------
+EXPORT_C TUint CFSMailFolderBase::GetMessageCount() const
+{
+ NM_FUNCTION;
+
+//
+ return (TUint)iNmPrivateFolder->mMessageCount;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetUnreadCount
+// -----------------------------------------------------------------------------
+EXPORT_C TUint CFSMailFolderBase::GetUnreadCount() const
+{
+ NM_FUNCTION;
+
+//
+ return (TUint)iNmPrivateFolder->mUnreadMessageCount;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetUnseenCount
+// -----------------------------------------------------------------------------
+EXPORT_C TUint CFSMailFolderBase::GetUnseenCount() const
+{
+ NM_FUNCTION;
+
+//
+ return (TUint)iNmPrivateFolder->mUnseenCount;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetSubFolderCount
+// -----------------------------------------------------------------------------
+EXPORT_C TUint CFSMailFolderBase::GetSubFolderCount() const
+{
+ NM_FUNCTION;
+
+//
+ return (TUint)iNmPrivateFolder->mSubFolderCount;
+//
+}
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::SetMessageCount
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::SetMessageCount( TUint aMessageCount )
+{
+ NM_FUNCTION;
+
+//
+ iNmPrivateFolder->mMessageCount = aMessageCount;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::SetUnreadCount
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::SetUnreadCount( TUint aMessageCount )
+{
+ NM_FUNCTION;
+
+//
+ iNmPrivateFolder->mUnreadMessageCount = aMessageCount;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::SetUnseenCount
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::SetUnseenCount( TUint aMessageCount )
+{
+ NM_FUNCTION;
+
+//
+ iNmPrivateFolder->mUnseenCount = aMessageCount;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::SetSubFolderCount
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::SetSubFolderCount(TUint aFolderCount)
+{
+ NM_FUNCTION;
+
+//
+ iNmPrivateFolder->mSubFolderCount = aFolderCount;
+//
+}
+
+// -----------------------------------------------------------------------------
+// CFSMailFolder::BlockCopyFromL
+// -----------------------------------------------------------------------------
+EXPORT_C void CFSMailFolderBase::BlockCopyFromL( RArray aFolderTypes,
+ TFSMailBoxStatus aMailBoxStatus )
+ {
+ NM_FUNCTION;
+
+ switch(aMailBoxStatus)
+ {
+ case EFSMailBoxOnline:
+ for(TInt i=0;i aFolderTypes,
+ TFSMailBoxStatus aMailBoxStatus )
+ {
+ NM_FUNCTION;
+
+ switch(aMailBoxStatus)
+ {
+ case EFSMailBoxOnline:
+ for(TInt i=0;i
+// -----------------------------------------------------------------------------
+// CFSMailFolderBase::GetNmFolder
+// -----------------------------------------------------------------------------
+EXPORT_C NmFolder* CFSMailFolderBase::GetNmFolder()
+{
+ NM_FUNCTION;
+
+ NmFolder* nmFolder = new NmFolder(iNmPrivateFolder);
+ return nmFolder;
+}
+//
+