CImEmailOperation Class Reference

class CImEmailOperation : public CMsvOperation

Provides simple email messages creation functions, including creation of new messages, replies, forwarded messages, and receipts.

Both plain-text and HTML messages, with or without attachments, can be created.

Inherits from

Public Member Functions
~CImEmailOperation()
CImEmailOperation *CreateCopyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateForwardAsAttachmentL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateForwardAsAttachmentL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)
IMPORT_C CImEmailOperation *CreateForwardL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TDesC &, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateForwardL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateForwardL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)
IMPORT_C CImEmailOperation *CreateForwardL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)
IMPORT_C CImEmailOperation *CreateNewL(TRequestStatus &, CMsvSession &, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateNewL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)
IMPORT_C CImEmailOperation *CreateNewL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)
IMPORT_C CImEmailOperation *CreateReceiptL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TDesC &, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateReceiptL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateReceiptL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)
IMPORT_C CImEmailOperation *CreateReceiptL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)
IMPORT_C CImEmailOperation *CreateReplyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TDesC &, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateReplyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)
IMPORT_C CImEmailOperation *CreateReplyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)
IMPORT_C CImEmailOperation *CreateReplyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)
voidDoCancel()
IMPORT_C const TDesC8 &FinalProgress()
const TDesC8 &ProgressL()
voidRunL()
Private Member Functions
CImEmailOperation(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)
voidAddMessageAsAttachmentL()
voidAddMessageAttachmentInfoL(TMsvId)
voidAddVCardAttachmentL()
voidAppendHtmlAttachmentL()
voidAttachOriginalMessageToNewMessageL()
voidCheckForSignatureOrVCardL()
voidClosePlainBodyTextArray(TAny *)
voidCompleteEmailOperationL()
voidConstructL(TMsvId, const TDesC &, TImEmailOperation)
voidConstructL(TMsvId, TImEmailOperation)
voidConstructL(TImEmailOperation)
voidCreateAddressListStringL(HBufC *&, const CDesCArray &)
voidCreateAttachmentEntryL()
voidCreateDefaultAttachmentL()
voidCreateEntryDetails(TMsvEmailEntry &)
voidCreateHTMLEntryL()
voidCreateMultipartAlternativeFolderEntryL()
voidCreateMultipartMixedFolderEntryL()
voidCreateNewHeaderL()
voidCreateNewMessageL(TMsvId)
voidCreateTextEntryL(TMsvId)
voidCreateVCardAttachmentL()
voidErrorRecovery(TInt)
voidGetBodyTextL()
TPtrC GetDefaultAttachmentName()
TInt GetPlainBodyTextSizeL()
TBool NeedMultipartMixedFolder()
voidOpenAndReadResourceFileL()
voidPrepareToStoreHTMLEntryTextL()
voidProcessStateL()
voidReadDefaultHtmlAttachmentNameL(TDes &)
TInt RemoveIncompleteAttachments()
voidRequestComplete(TInt)
voidResetStoreL()
voidRestoreOriginalHeaderL()
voidRestoreSmtpSettingsL()
voidSelectAndProcessNextStateL()
voidSelectNextStateL()
TMsvId ServiceId()
voidSetBodyHeaderFormatL()
voidSetSmtpServiceFromDefaultsL()
voidSetSmtpServiceFromOriginalMessageL()
voidStoreAttachmentL()
voidStoreBodyL()
voidStoreHTMLEntryTextL()
voidStorePlainBodyL()
voidStorePlainTextL()
Inherited Functions
CActive::CActive(TInt)
CActive::Cancel()
CActive::Deque()
CActive::IsActive()const
CActive::IsAdded()const
CActive::Priority()const
CActive::RunError(TInt)
CActive::SetActive()
CActive::SetPriority(TInt)
CActive::~CActive()
CBase::CBase()
CBase::Delete(CBase *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CMsvOperation::CMsvOperation(CMsvSession &,TInt,TRequestStatus &)
CMsvOperation::Extension_(TUint,TAny *&,TAny *)
CMsvOperation::Id()const
CMsvOperation::Mtm()const
CMsvOperation::Service()const
CMsvOperation::SystemProgress(TMsvSystemProgress &)
CMsvOperation::~CMsvOperation()
Private Member Enumerations
enumTImBodyHeaderFormat { ENoToCcInfo = 0, EToOnly, ECcOnly, EToAndCc }
enumTImEmailOperation {
ENew = 0, EReply = 1, EForward = 2, EReceipt = 3, EDeletingBadEmail = 4, ECopy = 5, EAttachOriginal = 0x80, EForwardAsAttachment = EForward | EAttachOriginal, EReplyAsAttachment = EReply | EAttachOriginal
}
enumTImEmailOperationState {
ECreateNewHeader, EGetBodyText, EGetAttachmentList, EGetMessageDigest, ECreateNewMessageEntry, ECheckMultipartMixedFolderRequired, ECreateMultipartMixedFolderEntry, ECheckMultipartAlternativeFolderRequired, ECreateMultipartAlternativeFolderEntry, ECheckTextEntryRequired, ECreateTextEntry, EStoreBody, ECheckVCardRequired, ECreateVCardAttachment, EAddVCardAttachment, ECheckHTMLEntryRequired, ECreateHTMLEntry, EPrepareToStoreHTMLEntryText, EStoreHTMLEntryText, ECheckAttachOriginalMessageRequired, EAttachOriginalMessage, ECheckHTMLPageRequired, EFindHTMLPage, ECopyHTMLPartToAttachment, ECheckAttachmentsRequired, ECreateAttachmentEntry, EStoreAttachment, ECheckEmbeddedMessagesRequired, EAddEmbeddedMessagesAsAttachments, ECompleteEmailOperation, EFinished, ECreateDefaultHtmlAttachment, EStoreHTMLTextInEntry, EAddMessageAttachmentInfo
}
Inherited Enumerations
CActive:TPriority
Private Attributes
TMsvId iAttachedMessageId
TInt iAttachmentCount
TImAttachmentFile iAttachmentFile
RPointerArray< CMsvAttachment >iAttachmentInfoList
TBool iAttachmentMgrUsed
HBufC *iBodyHeader
HBufC *iBodyHeaderCcString
HBufC *iBodyHeaderDateTimeFormatString
TImBodyHeaderFormat iBodyHeaderFormat
HBufC *iBodyHeaderFormatString
HBufC *iBodyHeaderToString
CCharFormatLayer *iCharLayer
TBool iCreateHtmlMessage
TPckgBuf< TMsvId >iDataMember
HBufC *iDefaultVCardNameFormatString
TMsvId iDestinationId
CImEmailMessage *iEmailMessage
TInt iEmbeddedMessagesToProcess
RFile iFile
CFileMan *iFileMan
TFileName iFileName
TBool iFinishedConvertingHTML
HBufC *iFormatString
CImHtmlConverter *iHtmlConverter
TMsvId iHtmlId
TBool iHtmlNoTextAlt
TImMessageField iMessageField
TUid iMsgType
TMsvEmailTypeList iMsvEmailTypeList
CMsvEntry *iMsvEntry
CMsvOperation *iMsvOperation
TBool iMultipartAlternativeFolderCreated
TMsvId iMultipartAlternativeId
TBool iMultipartMixedFolderCreated
TMsvId iMultipartMixedId
TBool iNeedToAddVCardAttachment
CImHeader *iNewHeader
TMsvId iNewMessageId
TImEmailOperation iOperation
TBool iOrigMessageHtml
TMsvId iOrigMessageId
CImHeader *iOriginalHeader
TMsvId iPCMailServiceId
CParaFormatLayer *iParaLayer
TMsvPartList iPartList
TInt iRestoreErr
CRichText *iRichText
TInt iRichTextSize
CRichText *iSignatureText
TMsvId iSmtpServiceId
CImSmtpSettings *iSmtpSettings
TInt iState
CMsvStore *iStore
TMsvId iTextId
TInt iTotalAttachments
TBool iUsePlainTextStorage
HBufC *iUserEmailAddress
TInt iVCardAndHtmlSize
TMsvId iVcardId
CStreamStore *iVcardStore
TStreamId iVcardStoreId
Inherited Attributes
CActive::iStatus
CMsvOperation::iMsvSession
CMsvOperation::iMtm
CMsvOperation::iObserverRequestStatus
CMsvOperation::iService

Constructor & Destructor Documentation

CImEmailOperation(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)

CImEmailOperation(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaDestination,
TMsvIdaSmtpServiceId,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority,
TBoolaUsePlainTextStorage
)[private]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aDestination
TMsvId aSmtpServiceId
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority
TBool aUsePlainTextStorage

~CImEmailOperation()

IMPORT_C~CImEmailOperation()

Member Functions Documentation

AddMessageAsAttachmentL()

voidAddMessageAsAttachmentL()[private]

AddMessageAttachmentInfoL(TMsvId)

voidAddMessageAttachmentInfoL(TMsvIdaAttachmentMessageId)[private]

Parameters

TMsvId aAttachmentMessageId

AddVCardAttachmentL()

voidAddVCardAttachmentL()[private]

AppendHtmlAttachmentL()

voidAppendHtmlAttachmentL()[private]

AttachOriginalMessageToNewMessageL()

voidAttachOriginalMessageToNewMessageL()[private]

CheckForSignatureOrVCardL()

voidCheckForSignatureOrVCardL()[private]

ClosePlainBodyTextArray(TAny *)

voidClosePlainBodyTextArray(TAny *aPtr)[private, static]

Parameters

TAny * aPtr

CompleteEmailOperationL()

voidCompleteEmailOperationL()[private]

ConstructL(TMsvId, const TDesC &, TImEmailOperation)

voidConstructL(TMsvIdaMessageId,
const TDesC &aFormatString,
TImEmailOperationaOperation
)[private]

Parameters

TMsvId aMessageId
const TDesC & aFormatString
TImEmailOperation aOperation

ConstructL(TMsvId, TImEmailOperation)

voidConstructL(TMsvIdaMessageId,
TImEmailOperationaOperation
)[private]

Parameters

TMsvId aMessageId
TImEmailOperation aOperation

ConstructL(TImEmailOperation)

voidConstructL(TImEmailOperationaOperation)[private]

Parameters

TImEmailOperation aOperation

CreateAddressListStringL(HBufC *&, const CDesCArray &)

voidCreateAddressListStringL(HBufC *&aListBuffer,
const CDesCArray &aAddressArray
)[private]

Parameters

HBufC *& aListBuffer
const CDesCArray & aAddressArray

CreateAttachmentEntryL()

voidCreateAttachmentEntryL()[private]

CreateCopyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)

CImEmailOperation *CreateCopyL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateDefaultAttachmentL()

voidCreateDefaultAttachmentL()[private]

CreateEntryDetails(TMsvEmailEntry &)

voidCreateEntryDetails(TMsvEmailEntry &aMsvEmailEntry)[private]

Parameters

TMsvEmailEntry & aMsvEmailEntry

CreateForwardAsAttachmentL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)

IMPORT_C CImEmailOperation *CreateForwardAsAttachmentL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateForwardAsAttachmentL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)

IMPORT_C CImEmailOperation *CreateForwardAsAttachmentL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaSmtpServiceId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority = EPriorityStandard
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aSmtpServiceId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority = EPriorityStandard

CreateForwardL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TDesC &, const TMsvEmailTypeList &, TUid)

IMPORT_C CImEmailOperation *CreateForwardL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TDesC &aFormatString,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TDesC & aFormatString
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateForwardL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)

IMPORT_C CImEmailOperation *CreateForwardL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateForwardL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)

IMPORT_C CImEmailOperation *CreateForwardL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvIdaSmtpServiceId,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority = EPriorityStandard
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvId aSmtpServiceId
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority = EPriorityStandard

CreateForwardL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)

IMPORT_C CImEmailOperation *CreateForwardL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvIdaSmtpServiceId,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority,
TBoolaUsePlainTextStorage
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvId aSmtpServiceId
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority
TBool aUsePlainTextStorage

CreateHTMLEntryL()

voidCreateHTMLEntryL()[private]

CreateMultipartAlternativeFolderEntryL()

voidCreateMultipartAlternativeFolderEntryL()[private]

CreateMultipartMixedFolderEntryL()

voidCreateMultipartMixedFolderEntryL()[private]

CreateNewHeaderL()

voidCreateNewHeaderL()[private]

CreateNewL(TRequestStatus &, CMsvSession &, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)

IMPORT_C CImEmailOperation *CreateNewL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateNewL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)

IMPORT_C CImEmailOperation *CreateNewL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaDestination,
TMsvIdaSmtpServiceId,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority = EPriorityStandard
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aDestination
TMsvId aSmtpServiceId
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority = EPriorityStandard

CreateNewL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)

IMPORT_C CImEmailOperation *CreateNewL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaDestination,
TMsvIdaSmtpServiceId,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority,
TBoolaUsePlainTextStorage
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aDestination
TMsvId aSmtpServiceId
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority
TBool aUsePlainTextStorage

CreateNewMessageL(TMsvId)

voidCreateNewMessageL(TMsvIdaDestinationId)[private]

Parameters

TMsvId aDestinationId

CreateReceiptL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TDesC &, const TMsvEmailTypeList &, TUid)

IMPORT_C CImEmailOperation *CreateReceiptL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TDesC &aFormatString,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TDesC & aFormatString
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateReceiptL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)

IMPORT_C CImEmailOperation *CreateReceiptL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateReceiptL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)

IMPORT_C CImEmailOperation *CreateReceiptL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority

CreateReceiptL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)

IMPORT_C CImEmailOperation *CreateReceiptL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority,
TBoolaUsePlainTextStorage
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority
TBool aUsePlainTextStorage

CreateReplyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TDesC &, const TMsvEmailTypeList &, TUid)

IMPORT_C CImEmailOperation *CreateReplyL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TDesC &aFormatString,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TDesC & aFormatString
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateReplyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid)

IMPORT_C CImEmailOperation *CreateReplyL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType

CreateReplyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt)

IMPORT_C CImEmailOperation *CreateReplyL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority

CreateReplyL(TRequestStatus &, CMsvSession &, TMsvId, TMsvId, TMsvPartList, const TMsvEmailTypeList &, TUid, TInt, TBool)

IMPORT_C CImEmailOperation *CreateReplyL(TRequestStatus &aObserverRequestStatus,
CMsvSession &aMsvSession,
TMsvIdaMessageId,
TMsvIdaDestination,
TMsvPartListaPartList,
const TMsvEmailTypeList &aMsvEmailTypeList,
TUidaMsgType,
TIntaPriority,
TBoolaUsePlainTextStorage
)[static]

Parameters

TRequestStatus & aObserverRequestStatus
CMsvSession & aMsvSession
TMsvId aMessageId
TMsvId aDestination
TMsvPartList aPartList
const TMsvEmailTypeList & aMsvEmailTypeList
TUid aMsgType
TInt aPriority
TBool aUsePlainTextStorage

CreateTextEntryL(TMsvId)

voidCreateTextEntryL(TMsvIdaFolderId)[private]

Parameters

TMsvId aFolderId

CreateVCardAttachmentL()

voidCreateVCardAttachmentL()[private]

DoCancel()

voidDoCancel()[virtual]

Implements cancellation of an outstanding request.

This function is called as part of the active object's Cancel().

It must call the appropriate cancel function offered by the active object's asynchronous service provider. The asynchronous service provider's cancel is expected to act immediately.

DoCancel() must not wait for event completion; this is handled by Cancel().

CActive::Cancel

ErrorRecovery(TInt)

voidErrorRecovery(TInterror)[private]

Parameters

TInt error

FinalProgress()

IMPORT_C const TDesC8 &FinalProgress()[virtual]

GetBodyTextL()

voidGetBodyTextL()[private]

GetDefaultAttachmentName()

TPtrC GetDefaultAttachmentName()[private]

GetPlainBodyTextSizeL()

TInt GetPlainBodyTextSizeL()[private]

NeedMultipartMixedFolder()

TBool NeedMultipartMixedFolder()const [private]

OpenAndReadResourceFileL()

voidOpenAndReadResourceFileL()[private]

PrepareToStoreHTMLEntryTextL()

voidPrepareToStoreHTMLEntryTextL()[private]

ProcessStateL()

voidProcessStateL()[private]

ProgressL()

const TDesC8 &ProgressL()[virtual]

Gets information on the progress of the operation.

All operations on local entries share the same progress information format, which defined by TMsvLocalOperationProgress.

For MTM-specific operations, progress information can be extracted by calling CBaseUiMtm::GetProgress() or displayed by CBaseUiMtm::DisplayProgressSummary() on the appropriate User Interface MTM.

Requirements:

Derived classes should implement this function so that the client can check on the progress of the operation. The function should share an understanding of the format of the buffer with the implementations of CBaseUiMtm::GetProgress() and CBaseUiMtm::DisplayProgressSummary() in the User Interface MTM. The arguments of CBaseUiMtm::GetProgress() show some information that should be included where appropriate.

leave

KErrNotReady The operation has not yet been started: it has been queued for execution in the Message Server

Descriptor holding progress information. The maximum buffer size should be KMsvProgressBufferLength (defined in msvipc.h).

ReadDefaultHtmlAttachmentNameL(TDes &)

voidReadDefaultHtmlAttachmentNameL(TDes &aFileName)[private]

Parameters

TDes & aFileName

RemoveIncompleteAttachments()

TInt RemoveIncompleteAttachments()[private]

RequestComplete(TInt)

voidRequestComplete(TIntaError)[private]

Parameters

TInt aError

ResetStoreL()

voidResetStoreL()[private]

RestoreOriginalHeaderL()

voidRestoreOriginalHeaderL()[private]

RestoreSmtpSettingsL()

voidRestoreSmtpSettingsL()[private]

RunL()

voidRunL()[virtual]

Handles an active object's request completion event.

A derived class must provide an implementation to handle the completed request. If appropriate, it may issue another request.

The function is called by the active scheduler when a request completion event occurs, i.e. after the active scheduler's WaitForAnyRequest() function completes.

Before calling this active object's RunL() function, the active scheduler has:

1. decided that this is the highest priority active object with a completed request

2. marked this active object's request as complete (i.e. the request is no longer outstanding)

RunL() runs under a trap harness in the active scheduler. If it leaves, then the active scheduler calls RunError() to handle the leave.

Note that once the active scheduler's Start() function has been called, all user code is run under one of the program's active object's RunL() or RunError() functions.

CActiveScheduler::Start

CActiveScheduler::Error

CActiveScheduler::WaitForAnyRequest

TRAPD

SelectAndProcessNextStateL()

voidSelectAndProcessNextStateL()[private]

SelectNextStateL()

voidSelectNextStateL()[private]

ServiceId()

TMsvId ServiceId()[private]

SetBodyHeaderFormatL()

voidSetBodyHeaderFormatL()[private]

SetSmtpServiceFromDefaultsL()

voidSetSmtpServiceFromDefaultsL()[private]

SetSmtpServiceFromOriginalMessageL()

voidSetSmtpServiceFromOriginalMessageL()[private]

StoreAttachmentL()

voidStoreAttachmentL()[private]

StoreBodyL()

voidStoreBodyL()[private]

StoreHTMLEntryTextL()

voidStoreHTMLEntryTextL()[private]

StorePlainBodyL()

voidStorePlainBodyL()[private]

StorePlainTextL()

voidStorePlainTextL()[private]

Member Enumerations Documentation

Enum TImBodyHeaderFormat

Enumerators

ENoToCcInfo = 0
EToOnly
ECcOnly
EToAndCc

Enum TImEmailOperation

Enumerators

ENew = 0
EReply = 1
EForward = 2
EReceipt = 3
EDeletingBadEmail = 4
ECopy = 5
EAttachOriginal = 0x80
EForwardAsAttachment = EForward | EAttachOriginal
EReplyAsAttachment = EReply | EAttachOriginal

Enum TImEmailOperationState

Enumerators

ECreateNewHeader
EGetBodyText
EGetAttachmentList
EGetMessageDigest
ECreateNewMessageEntry
ECheckMultipartMixedFolderRequired
ECreateMultipartMixedFolderEntry
ECheckMultipartAlternativeFolderRequired
ECreateMultipartAlternativeFolderEntry
ECheckTextEntryRequired
ECreateTextEntry
EStoreBody
ECheckVCardRequired
ECreateVCardAttachment
EAddVCardAttachment
ECheckHTMLEntryRequired
ECreateHTMLEntry
EPrepareToStoreHTMLEntryText
EStoreHTMLEntryText
ECheckAttachOriginalMessageRequired
EAttachOriginalMessage
ECheckHTMLPageRequired
EFindHTMLPage
ECopyHTMLPartToAttachment
ECheckAttachmentsRequired
ECreateAttachmentEntry
EStoreAttachment
ECheckEmbeddedMessagesRequired
EAddEmbeddedMessagesAsAttachments
ECompleteEmailOperation
EFinished
ECreateDefaultHtmlAttachment
EStoreHTMLTextInEntry
EAddMessageAttachmentInfo

Member Data Documentation

TMsvId iAttachedMessageId

TMsvId iAttachedMessageId[private]

TInt iAttachmentCount

TInt iAttachmentCount[private]

TImAttachmentFile iAttachmentFile

TImAttachmentFile iAttachmentFile[private]

RPointerArray< CMsvAttachment > iAttachmentInfoList

RPointerArray< CMsvAttachment >iAttachmentInfoList[private]

TBool iAttachmentMgrUsed

TBool iAttachmentMgrUsed[private]

HBufC * iBodyHeader

HBufC *iBodyHeader[private]

HBufC * iBodyHeaderCcString

HBufC *iBodyHeaderCcString[private]

HBufC * iBodyHeaderDateTimeFormatString

HBufC *iBodyHeaderDateTimeFormatString[private]

TImBodyHeaderFormat iBodyHeaderFormat

TImBodyHeaderFormat iBodyHeaderFormat[private]

HBufC * iBodyHeaderFormatString

HBufC *iBodyHeaderFormatString[private]

HBufC * iBodyHeaderToString

HBufC *iBodyHeaderToString[private]

CCharFormatLayer * iCharLayer

CCharFormatLayer *iCharLayer[private]

TBool iCreateHtmlMessage

TBool iCreateHtmlMessage[private]

TPckgBuf< TMsvId > iDataMember

TPckgBuf< TMsvId >iDataMember[private]

HBufC * iDefaultVCardNameFormatString

HBufC *iDefaultVCardNameFormatString[private]

TMsvId iDestinationId

TMsvId iDestinationId[private]

CImEmailMessage * iEmailMessage

CImEmailMessage *iEmailMessage[private]

TInt iEmbeddedMessagesToProcess

TInt iEmbeddedMessagesToProcess[private]

RFile iFile

RFile iFile[private]

CFileMan * iFileMan

CFileMan *iFileMan[private]

TFileName iFileName

TFileName iFileName[private]

TBool iFinishedConvertingHTML

TBool iFinishedConvertingHTML[private]

HBufC * iFormatString

HBufC *iFormatString[private]

CImHtmlConverter * iHtmlConverter

CImHtmlConverter *iHtmlConverter[private]

TMsvId iHtmlId

TMsvId iHtmlId[private]

TBool iHtmlNoTextAlt

TBool iHtmlNoTextAlt[private]

TImMessageField iMessageField

TImMessageField iMessageField[private]

TUid iMsgType

TUid iMsgType[private]

TMsvEmailTypeList iMsvEmailTypeList

TMsvEmailTypeList iMsvEmailTypeList[private]

CMsvEntry * iMsvEntry

CMsvEntry *iMsvEntry[private]

CMsvOperation * iMsvOperation

CMsvOperation *iMsvOperation[private]

TBool iMultipartAlternativeFolderCreated

TBool iMultipartAlternativeFolderCreated[private]

TMsvId iMultipartAlternativeId

TMsvId iMultipartAlternativeId[private]

TBool iMultipartMixedFolderCreated

TBool iMultipartMixedFolderCreated[private]

TMsvId iMultipartMixedId

TMsvId iMultipartMixedId[private]

TBool iNeedToAddVCardAttachment

TBool iNeedToAddVCardAttachment[private]

CImHeader * iNewHeader

CImHeader *iNewHeader[private]

TMsvId iNewMessageId

TMsvId iNewMessageId[private]

TImEmailOperation iOperation

TImEmailOperation iOperation[private]

TBool iOrigMessageHtml

TBool iOrigMessageHtml[private]

TMsvId iOrigMessageId

TMsvId iOrigMessageId[private]

CImHeader * iOriginalHeader

CImHeader *iOriginalHeader[private]

TMsvId iPCMailServiceId

TMsvId iPCMailServiceId[private]

CParaFormatLayer * iParaLayer

CParaFormatLayer *iParaLayer[private]

TMsvPartList iPartList

TMsvPartList iPartList[private]

TInt iRestoreErr

TInt iRestoreErr[private]

CRichText * iRichText

CRichText *iRichText[private]

TInt iRichTextSize

TInt iRichTextSize[private]

CRichText * iSignatureText

CRichText *iSignatureText[private]

TMsvId iSmtpServiceId

TMsvId iSmtpServiceId[private]

CImSmtpSettings * iSmtpSettings

CImSmtpSettings *iSmtpSettings[private]

TInt iState

TInt iState[private]

CMsvStore * iStore

CMsvStore *iStore[private]

TMsvId iTextId

TMsvId iTextId[private]

TInt iTotalAttachments

TInt iTotalAttachments[private]

TBool iUsePlainTextStorage

TBool iUsePlainTextStorage[private]

Indicates if the body text entry is plain text

HBufC * iUserEmailAddress

HBufC *iUserEmailAddress[private]

TInt iVCardAndHtmlSize

TInt iVCardAndHtmlSize[private]

TMsvId iVcardId

TMsvId iVcardId[private]

CStreamStore * iVcardStore

CStreamStore *iVcardStore[private]

TStreamId iVcardStoreId

TStreamId iVcardStoreId[private]