CSmsClientMtm Class Reference

class CSmsClientMtm : public CBaseMtm

The SMS client MTM interface.

Most of the functions in this class are implementations of the virtual functions defined by the base class CBaseMtm .

An object of this class can be obtained from the Client MTM registry. The message server provides the necessary information required by the registry to provide the SMS client MTM.

All client MTM objects have a current context. This is an entry in the message store that will be manipulated by certain APIs supplied by the MTM. If the current context is not set then certain APIs will panic.

The CBaseMtm::HasContext API can be used to check that the current context has been set. It can be set using either the CBaseMtm::SwitchCurrenEntryL API or the CBaseMtm::SetCurrentEntryL API.

CClientMtmRegistry CBaseMtm::HasContext CBaseMtm::SetCurrentEntryL CBaseMtm::SwitchCurrenEntryL

Inherits from

Public Member Functions
~CSmsClientMtm ()
void AddAddresseeL (const TDesC &)
void AddAddresseeL (const TDesC &, const TDesC &)
IMPORT_C void BioTypeChangedL ( TUid )
IMPORT_C void CreateMessageL ( TMsvEntry &)
IMPORT_C void CreateMessageL ( TMsvId )
TMsvPartList Find (const TDesC &, TMsvPartList )
CMsvOperation * ForwardL ( TMsvId , TMsvPartList , TRequestStatus &)
void HandleEntryEvent (enum MMsvEntryObserver::TMsvEntryEvent , TAny *, TAny *, TAny *)
CMsvOperation * InvokeAsyncFunctionL ( TInt , const CMsvEntrySelection &, TDes8 &, TRequestStatus &)
void InvokeSyncFunctionL ( TInt , const CMsvEntrySelection &, TDes8 &)
void LoadMessageL ()
IMPORT_C CSmsClientMtm * NewL ( CRegisteredMtmDll &, CMsvSession &)
TInt QueryCapability ( TUid , TInt &)
IMPORT_C CSmsSimParamOperation * ReadSimParamsL ( TRequestStatus &)
void RemoveAddressee ( TInt )
CMsvOperation * ReplyL ( TMsvId , TMsvPartList , TRequestStatus &)
IMPORT_C void RestoreServiceAndSettingsL ()
IMPORT_C void SaveMessageL ( CMsvStore &, TMsvEntry &)
void SaveMessageL ()
TInt ServiceId ()
CSmsSettings & ServiceSettings ()
const CSmsSettings & ServiceSettings ()
void SetMessageCharacterSetL ( TSmsDataCodingScheme::TSmsAlphabet )
CSmsHeader & SmsHeader ()
const CSmsHeader & SmsHeader ()
TMsvPartList ValidateMessage ( TMsvPartList )
IMPORT_C CSmsSimParamOperation * WriteSimParamsL (const CMobilePhoneSmspList &, TRequestStatus &)
Protected Member Functions
IMPORT_C TInt Extension_ ( TUint , TAny *&, TAny *)
Private Member Functions
CSmsClientMtm ( CRegisteredMtmDll &, CMsvSession &)
void AddRecipientL (const TDesC &, const TDesC &)
void BasicReplyForwardEntry ( TMsvEntry &)
void ConstructL ()
void ContextEntrySwitched ()
CMsvOperation * CreateNewEntryL ( TMsvEntry &, TMsvId , CSmsHeader &, const CRichText &, TRequestStatus &)
void DoAddAddresseeL (const TDesC &, const TDesC &)
void DoAddRecipientL ( CSmsHeader *, const TDesC &, const TDesC &)
TMsvPartList DoFindL (const TDesC &, TMsvPartList )
void FindInBodyL (const TDesC &, const TMsvPartList &, TMsvPartList &)
void FindL (const TDesC &, const TMsvPartList , TMsvPartList &)
HBufC * ReadEmailSubjectFormatL ( RResourceFile &, TInt , const TDesC &)
void ResetHeader ()
TBool ValidNumber (const TDesC &)
TBool ValidRecipients ()
Inherited Functions
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()
CBaseMtm::AddAddresseeL(TMsvRecipientType,const TDesC &)
CBaseMtm::AddAddresseeL(TMsvRecipientType,const TDesC &,const TDesC &)
CBaseMtm::AddAttachmentL(RFile &,const TDesC8 &,TUint,TRequestStatus &)
CBaseMtm::AddAttachmentL(const TDesC &,const TDesC8 &,TUint,TRequestStatus &)
CBaseMtm::AddEntryAsAttachmentL(TMsvId,TRequestStatus &)
CBaseMtm::AddLinkedAttachmentL(const TDesC &,const TDesC8 &,TUint,TRequestStatus &)
CBaseMtm::AddresseeList()const
CBaseMtm::Body()
CBaseMtm::Body()const
CBaseMtm::CBaseMtm(CRegisteredMtmDll &,CMsvSession &)
CBaseMtm::CancelAttachmentOperation()
CBaseMtm::ChangeDefaultServiceL(const TMsvId &)
CBaseMtm::CreateAttachmentL(const TDesC &,RFile &,const TDesC8 &,TUint,TRequestStatus &)
CBaseMtm::DefaultServiceL()const
CBaseMtm::Entry()const
CBaseMtm::Filler1()
CBaseMtm::Filler2()
CBaseMtm::GetExtensionData()
CBaseMtm::GetInterface(TUid)
CBaseMtm::HandleEntryEventL(TMsvEntryEvent,TAny *,TAny *,TAny *)
CBaseMtm::HasContext()const
CBaseMtm::RemoveDefaultServiceL()
CBaseMtm::RestoreBodyL(CMsvStore &)
CBaseMtm::Session()
CBaseMtm::SetCurrentEntryL(CMsvEntry *)
CBaseMtm::SetExtensionData(TAny *)
CBaseMtm::SetMessageCharacterSet(TUint)
CBaseMtm::SetSubjectL(const TDesC &)
CBaseMtm::StoreBodyL(CMsvStore &)
CBaseMtm::SubjectL()const
CBaseMtm::SwitchCurrentEntryL(TMsvId)
CBaseMtm::Type()const
CBaseMtm::~CBaseMtm()
Private Attributes
HBufC * iEmailForwardSubjectFormat
HBufC * iEmailReplySubjectFormat
TChar iRealAddressClose
TChar iRealAddressOpen
TMsvId iServiceId
CSmsSettings * iServiceSettings
CSmsHeader * iSmsHeader
Inherited Attributes
CBaseMtm::iAddresseeList
CBaseMtm::iCharFormatLayer
CBaseMtm::iMsvEntry
CBaseMtm::iParaFormatLayer

Constructor & Destructor Documentation

CSmsClientMtm(CRegisteredMtmDll &, CMsvSession &)

CSmsClientMtm ( CRegisteredMtmDll & aRegisteredMtmDll,
CMsvSession & aSession
) [private]

Parameters

CRegisteredMtmDll & aRegisteredMtmDll
CMsvSession & aSession

~CSmsClientMtm()

~CSmsClientMtm ( ) [virtual]

Member Functions Documentation

AddAddresseeL(const TDesC &)

void AddAddresseeL ( const TDesC & aRealAddress ) [virtual]

Adds an addressee for the current context.

Addresses are not validated by checking their format by this function. Usually that is performed by calling ValidateMessage() .

Requirements:

Implementations should append the address to the object's address cache in the protected iAddresseeList data member. Some implementations may also wish to store addresses in an internal data structure appropriate for the protocol, for example, a class holding message header information.

leave
KErrNotSupported The message already has the maximum number of addressees
leave
Other leave codes Dependent on implementation

Parameters

const TDesC & aRealAddress String representing an address to be added to the list for the current message

AddAddresseeL(const TDesC &, const TDesC &)

void AddAddresseeL ( const TDesC & aRealAddress,
const TDesC & aAlias
) [virtual]

Adds an addressee for the current context, and enables the client to specify an alias, which may be useful for some protocols. For example, for fax, if the address is the fax number, the alias could supply the recipient's name.

Addresses are not validated by checking their format by this function. Usually that is performed by calling ValidateMessage() .

Requirements:

Implementations should append the address to the object's address cache in the protected iAddresseeList data member. Some implementations may also wish to store addresses in an internal data structure appropriate for the protocol, for example, a class holding message header information.

leave
KErrNotSupported The message already has the maximum number of addressees
leave
Other leave codes Dependent on implementation

Parameters

const TDesC & aRealAddress String representing an address to be added to the list for the current message
const TDesC & aAlias Alias information

AddRecipientL(const TDesC &, const TDesC &)

void AddRecipientL ( const TDesC & aRealAddress,
const TDesC & aAlias
) [private]

Parameters

const TDesC & aRealAddress
const TDesC & aAlias

BasicReplyForwardEntry(TMsvEntry &)

void BasicReplyForwardEntry ( TMsvEntry & aNewEntry ) const [private]

Parameters

TMsvEntry & aNewEntry

BioTypeChangedL(TUid)

IMPORT_C void BioTypeChangedL ( TUid aBioTypeUid ) [virtual]

Parameters

TUid aBioTypeUid

ConstructL()

void ConstructL ( ) [private]

ContextEntrySwitched()

void ContextEntrySwitched ( ) [private, virtual]

Called by the base class functions SwitchCurrentEntryL() and SetCurrentEntryL() when the context is changed to another entry.

Client applications do not use this function. It is relevant only to implementers of derived classes.

Requirements:

An implementation should clear:

1. address data stored in iAddresseeList

2. any caches of MTM-specific entry data relating to a previous context. For example, if the implementation has a private buffer storing a message subject, for access through Subject(), this buffer should be cleared.

CreateMessageL(TMsvEntry &)

IMPORT_C void CreateMessageL ( TMsvEntry & aEntry )

Parameters

TMsvEntry & aEntry

CreateMessageL(TMsvId)

IMPORT_C void CreateMessageL ( TMsvId aServiceId ) [virtual]

Parameters

TMsvId aServiceId

CreateNewEntryL(TMsvEntry &, TMsvId, CSmsHeader &, const CRichText &, TRequestStatus &)

CMsvOperation * CreateNewEntryL ( TMsvEntry & aNewEntry,
TMsvId aDestination,
CSmsHeader & aSmsHeader,
const CRichText & aBody,
TRequestStatus & aCompletionStatus
) [private]

Parameters

TMsvEntry & aNewEntry
TMsvId aDestination
CSmsHeader & aSmsHeader
const CRichText & aBody
TRequestStatus & aCompletionStatus

DoAddAddresseeL(const TDesC &, const TDesC &)

void DoAddAddresseeL ( const TDesC & aRealAddress,
const TDesC & aAlias
) [private]

Parameters

const TDesC & aRealAddress
const TDesC & aAlias

DoAddRecipientL(CSmsHeader *, const TDesC &, const TDesC &)

void DoAddRecipientL ( CSmsHeader * aSmsHeader,
const TDesC & aRealAddress,
const TDesC & aAlias
) [private]

Parameters

CSmsHeader * aSmsHeader
const TDesC & aRealAddress
const TDesC & aAlias

DoFindL(const TDesC &, TMsvPartList)

TMsvPartList DoFindL ( const TDesC & aTextToFind,
TMsvPartList aPartList
) [private]

Parameters

const TDesC & aTextToFind
TMsvPartList aPartList

Extension_(TUint, TAny *&, TAny *)

IMPORT_C TInt Extension_ ( TUint aExtensionId,
TAny *& a0,
TAny * a1
) [protected, virtual]

Methods from CBaseMtm , The implementation of this function assumes that the new service for setting the charset encoding value for a SMS message is supported.

Parameters

TUint aExtensionId
TAny *& a0
TAny * a1

Find(const TDesC &, TMsvPartList)

TMsvPartList Find ( const TDesC & aTextToFind,
TMsvPartList aPartList
) [virtual]

Searches the specified message part(s) for the plain-text version of the text to be found.

If the specified part list indicates a part that is not supported, or is not present in the current message, the function behaves as if the specified part exists but does not contain the required text.

Requirements:

The parts of the entry for which searching is allowed is implementation specific. If no searching is supported, always return 0.

Parameters

const TDesC & aTextToFind The plain-text version of the text to be found.
TMsvPartList aPartList Indicates the message parts which should be searched.

FindInBodyL(const TDesC &, const TMsvPartList &, TMsvPartList &)

void FindInBodyL ( const TDesC & aTextToFind,
const TMsvPartList & aFoundList,
TMsvPartList & aResult
) [private]

Parameters

const TDesC & aTextToFind
const TMsvPartList & aFoundList
TMsvPartList & aResult

FindL(const TDesC &, const TMsvPartList, TMsvPartList &)

void FindL ( const TDesC & aTextToFind,
const TMsvPartList aPartList,
TMsvPartList & aFoundList
) [private]

Parameters

const TDesC & aTextToFind
const TMsvPartList aPartList
TMsvPartList & aFoundList

ForwardL(TMsvId, TMsvPartList, TRequestStatus &)

CMsvOperation * ForwardL ( TMsvId aDestination,
TMsvPartList aPartList,
TRequestStatus & aCompletionStatus
) [virtual]

Creates a forwarded message from the current message context.

Some MTMs may support inclusion of elements, specified by aPartlist, from the original message in the forwarded message. The parent for the new entry is specified in aDestination. The returned CMsvOperation object completes when editing the forwarded message is complete. On completion, the context is set to the forwarded message.

Requirements:

A typical implementation for this function would include the following steps:

1. create a new message in the specified destination by calling CMsvEntry::CreateL()

2. set the entry index values as appropriate

3. set message content as required. The normal minimum is to include the text of the original message. An implementation may also follow the options specified in aPartlist to include other properties of the original message.

4. set the context to the reply

5. return a CMsvOperation-derived object to provide asynchronous control and monitoring of the operation

If forwarded messages are not supported, implementations should leave with KErrNotSupported.

The implementation of this function may be similar to that of ReplyL() , allowing opportunities for code sharing.

leave
KErrNotSupported The Client-side MTM does not support creation of forwarded messages
leave
Other leave codes Dependent on implementation

Parameters

TMsvId aDestination The entry to which to assign the forwarded message
TMsvPartList aPartList Defines the parts that are to be copied from the original message into the forwarded message
TRequestStatus & aCompletionStatus The request status to be completed when the operation has finished

HandleEntryEvent(enum MMsvEntryObserver::TMsvEntryEvent, TAny *, TAny *, TAny *)

void HandleEntryEvent ( enum MMsvEntryObserver::TMsvEntryEvent ,
TAny * ,
TAny * ,
TAny *
)

InvokeAsyncFunctionL(TInt, const CMsvEntrySelection &, TDes8 &, TRequestStatus &)

CMsvOperation * InvokeAsyncFunctionL ( TInt aFunctionId,
const CMsvEntrySelection & aSelection,
TDes8 & aParameter,
TRequestStatus & aCompletionStatus
) [virtual]

Invokes asynchronous protocol-specific operations. For synchronous operations, a similar function, InvokeSyncFunctionL() , is available.

aSelection and aParameter allow data to be passed to the operation. The TRequestStatus and CMsvOperation objects are used as normal to control and monitor the operation.

Requirements:

For functionality that requires message transport access, such as making a connection, the implementation should pass the request onto the corresponding Server-side MTM. This is done through calling CMsvSession::TransferCommandL() . Implementations may also provide protocol-specific functions themselves if this is useful.

InvokeAsyncFunctionL() should return a CMsvOperation-derived object to provide asynchronous control and monitoring of the operation. If CMsvSession::TransferCommandL() is called, this should be the CMsvOperation object returned by that function.

leave
KErrNotSupported aFunctionId is not a recognised operation ID
leave
Other leave codes Dependent on implementation

Parameters

TInt aFunctionId ID of the requested operation
const CMsvEntrySelection & aSelection Selection of message entries. This is used if the operation requires message entries to work on.
TDes8 & aParameter Buffer containing input and output parameters. The format of this is specific to the operation.
TRequestStatus & aCompletionStatus The request status to be completed when the operation has finished

InvokeSyncFunctionL(TInt, const CMsvEntrySelection &, TDes8 &)

void InvokeSyncFunctionL ( TInt aFunctionId,
const CMsvEntrySelection & aSelection,
TDes8 & aParameter
) [virtual]

Invokes synchronous protocol-specific operations. For asynchronous operations, a similar function, InvokeAsyncFunctionL() , is available.

aSelection and aParameter allow data to be passed to the operation.

Requirements:

For functionality that requires message transport access, such as making a connection, the implementation should pass the request onto the corresponding Server-side MTM. This is done through calling CMsvSession::TransferCommandL() . Implementations may also provide protocol-specific functions themselves if this is useful.

leave
KErrNotSupported aFunctionId is not a recognised operation ID
leave
Other leave codes Dependent on implementation

Parameters

TInt aFunctionId ID of the requested operation
const CMsvEntrySelection & aSelection Selection of message entries. This is used if the operation requires message entries to work on.
TDes8 & aParameter Buffer containing input and output parameters. The format of this is specific to the operation.

LoadMessageL()

void LoadMessageL ( ) [virtual]

Loads the cache with the message data for the current context.

It can only be called on message contexts.

It is typically used after the context has been set with SetCurrentEntryL() or SwitchCurrentEntryL() . CBaseMtm functions to manipulate the entry can only be called after this function has been called.

Requirements:

An implementation must restore the store and index entry relating to the message context. Typically, the message store should be opened for reading with CMsvEntry::ReadStoreL() . It should be then be read to set the following:

1. body text: call RestoreBodyL() to update the cached body text

2. address list: read the appropriate MTM-specific area of the store to update iAddresseeList

3. subject: if supported, read the appropriate MTM-specific area of the store and update the cache with SetSubjectL()

The function should panic for non-message contexts.

NewL(CRegisteredMtmDll &, CMsvSession &)

IMPORT_C CSmsClientMtm * NewL ( CRegisteredMtmDll & aRegisteredMtmDll,
CMsvSession & aSession
) [static]

Parameters

CRegisteredMtmDll & aRegisteredMtmDll
CMsvSession & aSession

QueryCapability(TUid, TInt &)

TInt QueryCapability ( TUid aCapability,
TInt & aResponse
) [virtual]

Parameters

TUid aCapability
TInt & aResponse

ReadEmailSubjectFormatL(RResourceFile &, TInt, const TDesC &)

HBufC * ReadEmailSubjectFormatL ( RResourceFile & aResourceFile,
TInt aResourceId,
const TDesC & aDefaultFormat
) [private]

Parameters

RResourceFile & aResourceFile
TInt aResourceId
const TDesC & aDefaultFormat

ReadSimParamsL(TRequestStatus &)

IMPORT_C CSmsSimParamOperation * ReadSimParamsL ( TRequestStatus & aObserverRequestStatus )

Parameters

TRequestStatus & aObserverRequestStatus

RemoveAddressee(TInt)

void RemoveAddressee ( TInt aIndex ) [virtual]

Removes an address from the current address list. The address is specified by a zero-based index into the address list. If the index is not known, applications can use AddresseeList() to retrieve the entire list to find the item.

Requirements:

Implementations should call iAddresseeList->Delete(aIndex) to remove the address from in the address list protected data member.

Parameters

TInt aIndex Index of address to be removed

ReplyL(TMsvId, TMsvPartList, TRequestStatus &)

CMsvOperation * ReplyL ( TMsvId aDestination,
TMsvPartList aPartlist,
TRequestStatus & aCompletionStatus
) [virtual]

Creates a reply message to the current message context.

Some MTMs may support inclusion of elements, specified by aPartlist, from the original message in the reply. The parent for the new entry is specified in aDestination.

The returned CMsvOperation object completes when creating the reply is complete. On completion, the context is set to the reply message.

Requirements:

A typical implementation for this function would include the following steps:

1. create a new message in the specified destination by calling CMsvEntry::CreateL()

2. set the entry index values as appropriate

3. set the properties of the message as required. The normal minimum is to set the address to the sender of the original message. An implementation may also follow the options specified in aPartlist to set other properties, for example, to include the original message text.

4. set the context to the reply

5. return a CMsvOperation-derived object to provide asynchronous control and monitoring of the operation

If message replies are not supported, implementations should leave with KErrNotSupported.

The implementation of this function may be similar to that of ForwardL() , allowing opportunities for code sharing.

leave
KErrNotSupported The Client-side MTM does not support reply operations
leave
Other leave codes Dependent on implementation

Parameters

TMsvId aDestination The entry to which to assign the reply
TMsvPartList aPartlist Defines the parts that are to be copied from the original message into the reply
TRequestStatus & aCompletionStatus The request status to be completed when the operation has finished

ResetHeader()

void ResetHeader ( ) [private]

RestoreServiceAndSettingsL()

IMPORT_C void RestoreServiceAndSettingsL ( )

SaveMessageL(CMsvStore &, TMsvEntry &)

IMPORT_C void SaveMessageL ( CMsvStore & aEditStore,
TMsvEntry & aEntry
)

Parameters

CMsvStore & aEditStore
TMsvEntry & aEntry

SaveMessageL()

void SaveMessageL ( ) [virtual]

Commits cached changes to the storage controlled by the Message Server.

It can only be called on message contexts. It should be called in the following circumstances:

1. to preserve changes when the context is changed, or when the Client-side MTM object is deleted

2. to enable other parts of the Messaging to access the updated entry, as required, for example, before sending a message

Requirements:

An implementation must update the store and index entry relating to the message context. Typically, the message store should be opened for editing with CMsvEntry::EditStoreL() . It should be updated as follows:

1. body text: call StoreBodyL() to update the store's body text stream

2. address list: update the appropriate MTM-specific area of the store from the data in iAddresseeList

3. subject: if supported, update the appropriate MTM-specific area of the store from the private cache set by SetSubjectL()

Changes can then be committed to the store with CMsvStore::CommitL() .

The index entry should also be updated to reflect changes. Possible fields that may need updating include: Description (for subject changes); Details and Multiple Recipients (for recipient changes); and Size. Index entry changes are committed using CMsvEntry::ChangeL() .

The function should panic for non-message contexts.

ServiceId()

TInt ServiceId ( ) const [inline]

Gets the ID of the current SMS service.

If there is no current SMS service, the ID will be a value of 0. The CSmsClientMtm::RestoreServiceAndSettingsL API can set the SMS service IS. This also restores the SMS service settings.

CSmsClientMtm::RestoreServiceAndSettingsL

ServiceSettings()

CSmsSettings & ServiceSettings ( ) [inline]

Gets the current SMS service settings.

The current context must be set. If the current context is not set then a panic will occur.

The SMS service settings must have been set or a panic will occur. The CSmsClientMtm::RestoreServiceAndSettingsL API can restore the SMS service settings. This also sets the SMS service ID.

panic
SMCM 1 The current context has not been set (debug only).
panic
SMCM 11 The SMS Service settings have not been set (debug only).
CSmsClientMtm::RestoreServiceAndSettingsL

ServiceSettings()

const CSmsSettings & ServiceSettings ( ) const [inline]

Gets the current (const) SMS service settings.

The current context must be set. If the current context is not set then a panic will occur.

The SMS service settings must have been set or a panic will occur. The CSmsClientMtm::RestoreServiceAndSettingsL API can restore the SMS service settings. This also sets the SMS service ID.

panic
SMCM 1 The current context has not been set (debug only).
panic
SMCM 11 The SMS Service settings have not been set (debug only).
CSmsClientMtm::RestoreServiceAndSettingsL

SetMessageCharacterSetL(TSmsDataCodingScheme::TSmsAlphabet)

void SetMessageCharacterSetL ( TSmsDataCodingScheme::TSmsAlphabet aTsmsAlphabet )

Sets the character encoding value. The character encoding value options are 7-bit, 8-bit and 16-Bit Unicode. By default the character set encoding is 7 bit encoding.

Parameters

TSmsDataCodingScheme::TSmsAlphabet aTsmsAlphabet

SmsHeader()

CSmsHeader & SmsHeader ( ) [inline]

Gets the message header for a message context.

The current context must be set to a message entry with type KUidMsvMessageEntryValue. If the current context is not set, or is set to an entry not of type KUidMsvMessageEntryValuethen a panic will occur.

The message header object is the SMS MTM encapsulation of an SMS message. The contents of the message header has been extracted from the current context.

panic
SMCM 1 The current context has not been set (debug only).
panic
SMCM 2 The current context was not of type KUidMsvMessageEntry (debug only).
CSmsHeader

SmsHeader()

const CSmsHeader & SmsHeader ( ) const [inline]

Gets the (const) message header for a message context.

The current context must be set to a message entry with type KUidMsvMessageEntryValue. If the current context is not set, or is set to an entry not of type KUidMsvMessageEntryValuethen a panic will occur.

The message header object is the SMS MTM encapsulation of an SMS message. The contents of the message header has been extracted from the current context.

panic
SMCM 1 The current context has not been set (debug only).
panic
SMCM 2 The current context was not of type KUidMsvMessageEntry (debug only).
CSmsHeader

ValidNumber(const TDesC &)

TBool ValidNumber ( const TDesC & aNumber ) const [private]

Parameters

const TDesC & aNumber

ValidRecipients()

TBool ValidRecipients ( ) const [private]

ValidateMessage(TMsvPartList)

TMsvPartList ValidateMessage ( TMsvPartList aPartList ) [virtual]

Validates the current message context.

The precise validation performed is specific to the MTM, but, typically, checks that the specified message parts are well-formed.

Requirements:

Implementation of this function is highly protocol-specific. A minimum step is to check that the current context is a message.

Parameters

TMsvPartList aPartList Indicates the message parts for which validation is requested

WriteSimParamsL(const CMobilePhoneSmspList &, TRequestStatus &)

IMPORT_C CSmsSimParamOperation * WriteSimParamsL ( const CMobilePhoneSmspList & aList,
TRequestStatus & aObserverRequestStatus
)

Parameters

const CMobilePhoneSmspList & aList
TRequestStatus & aObserverRequestStatus

Member Data Documentation

HBufC * iEmailForwardSubjectFormat

HBufC * iEmailForwardSubjectFormat [private]

HBufC * iEmailReplySubjectFormat

HBufC * iEmailReplySubjectFormat [private]

TChar iRealAddressClose

TChar iRealAddressClose [private]

TChar iRealAddressOpen

TChar iRealAddressOpen [private]

TMsvId iServiceId

TMsvId iServiceId [private]

CSmsSettings * iServiceSettings

CSmsSettings * iServiceSettings [private]

CSmsHeader * iSmsHeader

CSmsHeader * iSmsHeader [private]