#include "gsmuieoperations.h"
class CSmsIEOperation : public CBase |
Protected Attributes | |
---|---|
CSmsMessage & | iMessage |
Public Member Functions | |
---|---|
virtual | ~CSmsIEOperation() |
IMPORT_C CSmsInformationElement::TSmsInformationElementIdentifier | Id() |
CSmsIEOperation * | NewL(CSmsInformationElement::TSmsInformationElementIdentifier, CSmsMessage &, CCnvCharacterSetConverter &, RFs &) |
Protected Member Functions | |
---|---|
CSmsIEOperation(CSmsInformationElement::TSmsInformationElementIdentifier, CSmsMessage &) | |
virtual TBool | MessageTypeSupported() |
virtual void | ValidateOperationL() |
void | operator=(const CSmsIEOperation &) |
TBool | operator==(const CSmsIEOperation &) |
SMS Stack clients use specialisations of this class to configure a SMS Message with Control Information Elements which have been introduced in 23.040 v6.5.0.
The 23.040 v6.5.0 standard defines individual requirements for how each of these control information elements is to be encoded and decoded. These requirements mean that these control information elements need to be configured in the CSmsMessage using derivations of this interface, rather than CSmsUserData::AddInformationElementL().
CSmsUserData::AddInformationElement specifies those information elements it supports and those that are supported by CSmsIEOperation and its derivatives.
Each control information element that uses this interface is supported by a class derived from CSmsIEOperation. The derived class operates on the CSmsMessage, allowing the client to add, remove and access control information elements inside the CSmsMessage.
The client gets access to an operations class using the following interface:
CSmsIEOperation& CSmsMessage::GetOperationsForIEL(CSmsInformationElement::TSmsInformationElementIdentifier aId);
When the CSmsMessage is deleted, all its associated CSmsIEOperations classes are also deleted and references to them become stale. Each instance of the CSmsIEOperation Class is an attributes of the CSmsMessage itself.
CSmsIEOperation | ( | CSmsInformationElement::TSmsInformationElementIdentifier | aId, |
CSmsMessage & | aMessage | ||
) | [protected] |
IMPORT_C CSmsInformationElement::TSmsInformationElementIdentifier | Id | ( | ) | const |
Identifies the information element which is supported by this operations class.
Returns: The information element ID supported by this operations class.
TBool | MessageTypeSupported | ( | ) | const [protected, virtual] |
Identifies whether the message type supports is supported
Returns: True if the message type is supported. False otherwise.
CSmsIEOperation * | NewL | ( | CSmsInformationElement::TSmsInformationElementIdentifier | aId, |
CSmsMessage & | aMessage, | |||
CCnvCharacterSetConverter & | aCharacterSetConverter, | |||
RFs & | aFs | |||
) | [static] |
This is used by the CSmsMessage to create a CSmsIEOperation. Each instance is owned by the CSmsMessage which created it. Therefore only the CSmsMessage (GSMU component) is allowed to create and delete CSmsIEOperations.
Parameter | Description |
---|---|
aId | The ID for the CSmsInformationElement for whom an operation class needs to be created. |
aMessage | The CSmsMessage that this operations class belongs to. |
aCharacterSetConverter | A reference to a character set converter, needed by some derived operation classes. |
aFs | A reference to the file server, needed by some derived operations classes. |
void | operator= | ( | const CSmsIEOperation & | ) | [protected] |
Prevent clients from using the assignment operator by including it in the class definition but making it protected and not exporting it.
TBool | operator== | ( | const CSmsIEOperation & | ) | [protected] |
Prevent clients from using the equality operator by including it in the class definition but making it protected and not exporting it.