diff -r 6a20128ce557 -r ebfee66fde93 email/imap4mtm/imapmailstore/inc/cfetchbodyinfo.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/email/imap4mtm/imapmailstore/inc/cfetchbodyinfo.h Fri Jun 04 10:25:39 2010 +0100 @@ -0,0 +1,83 @@ +// Copyright (c) 2006-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 __CFETCHBODYINFO_H__ +#define __CFETCHBODYINFO_H__ + +#include +#include +#include +#include + +/** +Represents a message body or attachent part +@internalTechnology +@prototype +*/ + +class CFetchBodyInfo : public CBase + { +public: + IMPORT_C static CFetchBodyInfo* NewLC(TMsvId aPartId); + IMPORT_C static CFetchBodyInfo* NewL(TMsvId aPartId); + ~CFetchBodyInfo(); + + IMPORT_C TInt32 SizeToFetch(); + IMPORT_C TMsvId PartId(); + IMPORT_C HBufC8* RelativePath() const; + IMPORT_C TInt32 BodyPartRemainingSize(); + IMPORT_C TBool IsText(); + + IMPORT_C void SetSizeToFetch(TInt32 aSize); + IMPORT_C void SetIsText(TBool aIsText); + IMPORT_C void SetPartId(const TMsvId aId); + IMPORT_C void SetRelativePathL(const TDesC8& aPath); + IMPORT_C void SetBodyPartRemainingSize(const TInt32 aSize); + IMPORT_C void SetContentTransferEncoding(const TImEncodingType); + IMPORT_C void SetCharsetId(const TUint aCharsetId); + IMPORT_C TImEncodingType ContentTransferEncoding() const; + IMPORT_C TUint CharsetId() const; + IMPORT_C void SetCaf(CImCaf* aCaf); + IMPORT_C void ResetCaf(); + IMPORT_C CImCaf* Caf() const; + IMPORT_C TInt32 BytesFetched(); + IMPORT_C void IncrementBytesFetched(TInt32 aByteCount); +private: + CFetchBodyInfo(TMsvId aPartId); + void ConstructL(); + +private: + //the size of the data we want to retrieve + TInt32 iSizeToFetch; + //if the data is text then its a body part, otherwise its an attachment + TBool iIsText; + // the tmsvid where the data will be stored in the message store + TMsvId iPartId; + // the body sections we will be retrieving, eg 1, or 1.2 or 1.text + HBufC8* iRelativePath; + //for a partial fetch this is the amount of data not being fetched + TInt32 iBodyPartRemainingSize; + // the encoding method thats been used to encode the data + TImEncodingType iContentTransferEncoding; + // the chrachter set id + TUint iCharsetId; + //Content Access Framework Wrapper class, not owned by this class. + CImCaf* iCaf; + //A count of the bytes that have been fetched. + TInt32 iBytesFetched; + }; + + +#endif // __CFETCHBODYINFO_H__