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; +} +// +