CRetrieveMobilePhoneSmspList Class Reference

class CRetrieveMobilePhoneSmspList : public CAsyncRetrieveWithClientIds

Reads SMS parameter list from the SIM's SMSP store.

Instead of reading each SMSP entry individually, a client will retrieve all the entries currently stored in one go. A list object (CMobilePhoneSmspList) will be returned to the client. The list object that is returned to the client will contain an entry for each set of SMS parameters.

Due to the probable time taken to retrieve a list, clients must use an asynchronous approach based around the use of this object.

Public Member Functions
~CRetrieveMobilePhoneSmspList()
IMPORT_C CRetrieveMobilePhoneSmspList *NewL(RMobileSmsMessaging &)
IMPORT_C CMobilePhoneSmspList *RetrieveListL()
IMPORT_C voidStart(TRequestStatus &)
Protected Member Functions
CRetrieveMobilePhoneSmspList(RMobileSmsMessaging &)
voidConstructL()
voidRestoreListL()
Private Member Functions
voidCancelReq(TInt, TInt)
voidGet(TInt, TRequestStatus &, TDes8 &, TDes8 &)
Inherited Functions
CActive::CActive(TInt)
CActive::Cancel()
CActive::Deque()
CActive::Extension_(TUint,TAny *&,TAny *)
CActive::IsActive()const
CActive::IsAdded()const
CActive::Priority()const
CActive::RunError(TInt)
CActive::SetActive()
CActive::SetPriority(TInt)
CActive::~CActive()
CAsyncRetrieveVariableLengthBufferV2::CAsyncRetrieveVariableLengthBufferV2()
CAsyncRetrieveVariableLengthBufferV2::CompleteIfInUse(TRequestStatus &)
CAsyncRetrieveVariableLengthBufferV2::FreeBuffer()
CAsyncRetrieveVariableLengthBufferV2::Start(TRequestStatus &,TDes8 *,TDes8 *)
CAsyncRetrieveVariableLengthBufferV2::~CAsyncRetrieveVariableLengthBufferV2()
CAsyncRetrieveWithClientIds::CAsyncRetrieveWithClientIds(TInt,TInt)
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()
Inherited Enumerations
CActive:TPriority
CAsyncRetrieveVariableLengthBufferV2:@151
Private Attributes
RMobileSmsMessaging &iMessaging
CMobilePhoneSmspList *iResults
Inherited Attributes
CActive::iStatus
CAsyncRetrieveVariableLengthBufferV2::iIpcCancel
CAsyncRetrieveVariableLengthBufferV2::iIpcPhase1
CAsyncRetrieveVariableLengthBufferV2::iIpcPhase2
CAsyncRetrieveVariableLengthBufferV2::iResultsBuf
CAsyncRetrieveVariableLengthBufferV2::iResultsPtr
CAsyncRetrieveVariableLengthBufferV2::iState
CAsyncRetrieveWithClientIds::iId

Constructor & Destructor Documentation

CRetrieveMobilePhoneSmspList(RMobileSmsMessaging &)

CRetrieveMobilePhoneSmspList(RMobileSmsMessaging &aMessaging)[protected]

Parameters

RMobileSmsMessaging & aMessaging

~CRetrieveMobilePhoneSmspList()

IMPORT_C~CRetrieveMobilePhoneSmspList()

The destructor frees all resources owned by the object, prior to its destruction.

Member Functions Documentation

CancelReq(TInt, TInt)

voidCancelReq(TIntaIpc1,
TIntaIpc2
)[private, virtual]

This method uses the Cancel IPC request within RTelSubsessionBase to send a cancel for one of the asynchronous phases to ETel server

Parameters

TInt aIpc1The IPC value of the cancel request
TInt aIpc2The IPC value of the original asynchronous phase request

ConstructL()

voidConstructL()[protected]

Get(TInt, TRequestStatus &, TDes8 &, TDes8 &)

voidGet(TIntaIpc,
TRequestStatus &aReqStatus,
TDes8 &aDes1,
TDes8 &aDes2
)[private, virtual]

This method uses the Get IPC request within RTelSubsessionBase to send one of the asynchronous phase requests to ETel server

Parameters

TInt aIpcThe IPC value of the asynchronous phase request
TRequestStatus & aReqStatusThe request status for the asynchronous phase request
TDes8 & aDes1The first parameter for the asynchronous phase request
TDes8 & aDes2The second parameter for the asynchronous phase request

NewL(RMobileSmsMessaging &)

IMPORT_C CRetrieveMobilePhoneSmspList *NewL(RMobileSmsMessaging &aMessaging)[static]

This member function creates an instance of the CActive derived CRetrieveMobilePhoneCbmiList class.

capability
None

Parameters

RMobileSmsMessaging & aMessagingAn instance of RMobileSmsMessaging as it is this messaging sub-session that the list retrieval class will operate on.

RestoreListL()

voidRestoreListL()[protected, virtual]

This method restores a list from a buffer that contains the streamed version of the list

RetrieveListL()

IMPORT_C CMobilePhoneSmspList *RetrieveListL()

This member function provides the client with a handle to the list class retrieved from the store. The client will call this member function once Start() has completed.

When the client calls this member function the ownership of the CMobilePhoneSmspList object will transfer to the client, so the client is then responsible for eventual deletion of this object.

leave
KErrNotFound If there is no valid list object to return to the client.
capability
ReadDeviceData

Start(TRequestStatus &)

IMPORT_C voidStart(TRequestStatus &aReqStatus)

This member function starts the two-phase list retrieval.

capability
ReadDeviceData

Parameters

TRequestStatus & aReqStatusOn completion, the status of the request; KErrNone if successful, KErrNotSupported if the phone does not support access to a SMSP list store and KErrNotFound if the store does not exist. If the list is empty then KErrNone is returned.

Member Data Documentation

RMobileSmsMessaging & iMessaging

RMobileSmsMessaging &iMessaging[private]

CMobilePhoneSmspList * iResults

CMobilePhoneSmspList *iResults[private]