CSmsEnhancedVoiceMailOperations Class Reference

#include <gsmuieoperations.h>

class CSmsEnhancedVoiceMailOperations : public CSmsCtrlOperation, public CSmsCtrlOperation
Protected Attributes
CCnvCharacterSetConverter &iCharacterSetConverter
RFs &iFs
Public Member Functions
CSmsEnhancedVoiceMailOperations(CSmsInformationElement::TSmsInformationElementIdentifier, CSmsMessage &, CCnvCharacterSetConverter &, RFs &)
~CSmsEnhancedVoiceMailOperations()
IMPORT_C voidAddEnhancedVoiceMailIEL(const CEnhancedVoiceMailBoxInformation &)
IMPORT_C TBoolContainsEnhancedVoiceMailIEL()
IMPORT_C CEnhancedVoiceMailBoxInformation *CopyEnhancedVoiceMailIEL()
IMPORT_C CEnhancedVoiceMailBoxInformation *RemoveEnhancedVoiceMailIEL()
Protected Member Functions
CEnhancedVoiceMailBoxInformation *GetEnhancedVoiceMailIEL(TBool)
virtual voidValidateOperationL()
voidoperator=(const CSmsEnhancedVoiceMailOperations &)
TBool operator==(const CSmsEnhancedVoiceMailOperations &)
Inherited Attributes
CSmsIEOperation::iMessage
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
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()
CSmsCtrlOperation::CSmsCtrlOperation(CSmsInformationElement::TSmsInformationElementIdentifier,CSmsMessage &)
CSmsCtrlOperation::operator=(const CSmsCtrlOperation &)
CSmsCtrlOperation::operator==(const CSmsCtrlOperation &)
CSmsCtrlOperation::~CSmsCtrlOperation()
CSmsIEOperation::CSmsIEOperation(CSmsInformationElement::TSmsInformationElementIdentifier,CSmsMessage &)
CSmsIEOperation::Id()const
CSmsIEOperation::MessageTypeSupported()const
CSmsIEOperation::NewL(CSmsInformationElement::TSmsInformationElementIdentifier,CSmsMessage &,CCnvCharacterSetConverter &,RFs &)
CSmsIEOperation::operator=(const CSmsIEOperation &)
CSmsIEOperation::operator==(const CSmsIEOperation &)
CSmsIEOperation::~CSmsIEOperation()

Detailed Description

Clients use this class to configure a CSmsMessage with either an Enhanced Voice Mail Notification or a Enhanced Voice Mail Delete Confirmation per 23.040 v6.5.0 section 9.2.3.24.13.

Clients should be aware that 23.040 v6.5.0 specifies that this information element must fit into the user data field of a single PDU. The amount of space available in the user data field depends on both the number and size of the mandatory information elements that must also be present. Intuitively the largest Enhanced Voice Mail information element can be added when no mandatory information elements need to be encoded in the PDU. To achieve this, the CSmsMessage must be configured with only the Enhanced Voice Mail Information Element and no other information elements or text.

Member Attribute Documentation

iCharacterSetConverter

CCnvCharacterSetConverter &iCharacterSetConverter[protected]

iFs

RFs &iFs[protected]

Constructor & Destructor Documentation

CSmsEnhancedVoiceMailOperations ( CSmsInformationElement::TSmsInformationElementIdentifier, CSmsMessage &, CCnvCharacterSetConverter &, RFs & )

CSmsEnhancedVoiceMailOperations(CSmsInformationElement::TSmsInformationElementIdentifieraId,
CSmsMessage &aMessage,
CCnvCharacterSetConverter &aCharacterSetConverter,
RFs &aFs
)

Status Reporting.

Note:

This should be the last thing that should be configured in CSmsMessage. If anything is changed after this then the number of PDUs might change which will affect status reporting.

~CSmsEnhancedVoiceMailOperations ( )

~CSmsEnhancedVoiceMailOperations()[inline]

Member Function Documentation

AddEnhancedVoiceMailIEL ( const CEnhancedVoiceMailBoxInformation & )

IMPORT_C voidAddEnhancedVoiceMailIEL(const CEnhancedVoiceMailBoxInformation &aEVMI)const
Adds an Enhanced Voice Mail Information Element to the CSmsMessage. The information element can be either an Enhanced Voice Mail Notification or an Enhanced Voice Mail Delete Confirmation. Enhanced Voice Mail Notifications and Enhanced Voice Mail Delete Confirmations are abstracted in classes derived from CEnhancedVoiceMailBoxInformation.
Parameters
aEVMIA pointer to the Enhanced Voice Mail Information Element.
Leave Codes
KErrNotSupportedIf the message version or type does not support this query.
KErrAlreadyExistsIf an Enhanced Voice Mail Information Element has already been installed.
KErrArgumentIf the input parameter contains invalid parameters.
Capability
None

ContainsEnhancedVoiceMailIEL ( )

IMPORT_C TBoolContainsEnhancedVoiceMailIEL()const
Determines whether the CSmsMessage contains an Enhanced Voice Mail Information Element.
Return Value
True if the CSmsMessage contains an Enhanced Voice Mail Information Element.
Leave Codes
KErrNotSupportedIf the message version or type does not support this query.
Capability
None

CopyEnhancedVoiceMailIEL ( )

IMPORT_C CEnhancedVoiceMailBoxInformation *CopyEnhancedVoiceMailIEL()const
Copies the Enhanced Voice Mail Information Element contained in the CSmsMessage, provided one exists.
Leave Codes
KErrNotSupportedIf the message version or type does not support this query.
KErrNotFoundIf the
Capability
None

GetEnhancedVoiceMailIEL ( TBool )

CEnhancedVoiceMailBoxInformation *GetEnhancedVoiceMailIEL(TBoolaRemove)const [protected]
Returns a copy of the Enhanced Voice Mail Information Element contained in the CSmsMessage, provided one exists. Optionally deletes the information element.
Parameters
aRemoveIndicates that the information element should be deleted once its contents have been copied.
Leave Codes
KErrNotFoundIf the

RemoveEnhancedVoiceMailIEL ( )

IMPORT_C CEnhancedVoiceMailBoxInformation *RemoveEnhancedVoiceMailIEL()const
Removes the Enhanced Voice Mail Information Element from the CSmsMessage, provided it exists.
Leave Codes
KErrNotSupportedIf the message version or type does not support this query.
KErrNotFoundIf the
Capability
None

ValidateOperationL ( )

voidValidateOperationL()const [protected, virtual]

Identifies whether the message type or version supports this operation

If the message type or version does not support this operation.
Leave Codes

operator= ( const CSmsEnhancedVoiceMailOperations & )

voidoperator=(const CSmsEnhancedVoiceMailOperations &)[protected]

Prevent clients from using the assignment operator by including it in the class definition but making it protected and not exporting it.

Capability
None

operator== ( const CSmsEnhancedVoiceMailOperations & )

TBool operator==(const CSmsEnhancedVoiceMailOperations &)[protected]

Prevent clients from using the equality operator by including it in the class definition but making it protected and not exporting it.

Capability
None