diff -r 9f5ae1728557 -r db3f5fa34ec7 messagingfw/msgtestfw/TestActionUtils/inc/CMtfTestActionUtilsEmailMessage.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/messagingfw/msgtestfw/TestActionUtils/inc/CMtfTestActionUtilsEmailMessage.h Wed Nov 03 22:41:46 2010 +0530 @@ -0,0 +1,128 @@ +// Copyright (c) 2004-2009 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: +// + + +#ifndef __CMTF_TEST_ACTION_UTILS_EMAIL_MESSAGE_H__ +#define __CMTF_TEST_ACTION_UTILS_EMAIL_MESSAGE_H__ + +// System include +#include +#include +#include +#include + +#include "CMtfTestCase.h" + +/** + Stores the information of an email message. Creates and CImEmailMessage object + for the message. Any operations related to the email message can be perfored using + this the CImEmailMessage object. + + The class stores the message part Id and the size information for + Body Text and Html and also the Html path. + + If the Body Text part is modified, then StoreBodyTextInfoL() function needs to be + called to update the stored Body Text information. Similarly, StoreHtmlInfoL() function + needs to be called when Html part is modified by the email message object. + + @internalTechnology +*/ +class CMtfTestActionUtilsEmailMessage + { +public: + static CMtfTestActionUtilsEmailMessage* NewL(CMsvEntry& aMsvEntry, CMtfTestCase& aTestCase); + + // Destructor + ~CMtfTestActionUtilsEmailMessage(); + + // Sets the information about the Body text, Html and attachment parts + TInt ProcessMessageInfoL(); + + // Email message + CImEmailMessage* GetEmailMessageL(); + + // TMsvId of the email message + TInt GetMessageId(TMsvId& aMsgId); + + // Size of the email message + TInt GetMessageSize(TInt32& aMsgSize); + + // TMsvId of the Plain text part + TMsvId GetBodyTextId(); + + // Size of the Plain text part + TInt32 GetBodyTextSize(); + + // TMsvId of the Html part + TMsvId GetHtmlEntryId(); + + // Size of the Html part + TInt32 GetHtmlSize(); + + // Body Text + void GetBodyTextL(CRichText& aRichText, CParaFormatLayer& aParaFormatLayer, + CCharFormatLayer& aCharFormatLayer); + + // Html file name + TInt HtmlFileName(TPtrC& aHtmlFileName); + + // Call asynchronous function to get the attachment list for the email message + TInt GetMessageAttachmentListL(); + + // Store the Id, size, and content information for the plain body text + TInt StoreBodyTextInfoL(); + + // Store the Id, size, and File name information for the Html part + TInt StoreHtmlInfoL(); + + // Check for the complete flag of the message part + TInt CheckCompleteFlagL(TMsvId aMsgId, TBool& aCompleteFlate); + + // Check for the partial download flag of the message part + TInt CheckPartialDownloadFlagL(TMsvId aMsgId, TBool& aPartialDownloadFlag); + +private: + // Constructor + CMtfTestActionUtilsEmailMessage(CMsvEntry& aMsvEntry, CMtfTestCase& aTestCase); + + void ConstructL(); + +private: + /** Id of the email message */ + CMsvEntry& iEmailEntry; + + /** Email message */ + CImEmailMessage* imEmailMessage; + + /** Id of the Body Text of the email message */ + TMsvId iBodyTextId; + + /** Size of the Body Text of the email message */ + TInt32 iBodyTextSize; + + /** Id of Html part of the email message */ + TMsvId iHtmlEntryId; + + /** Size of the Html part of the email message */ + TInt32 iHtmlSize; + + /** Name of Html file */ + TPtrC iHtmlFileName; + + /** Reference to the current Test Case */ + CMtfTestCase& iTestCase; + }; + +#endif //__CMTF_TEST_ACTION_UTILS_EMAIL_MESSAGE_H__