CSIPTransactionBase Class Reference

class CSIPTransactionBase : public CBase

Base class for managing SIP transactions. It provides services for querying transaction type and its state.

This class is an abstract class and cannot be instantiated. sipclient

Inherits from

Constructor & Destructor Documentation

CSIPTransactionBase(TBool, TUint32, MTransactionAssociation &)

CSIPTransactionBase(TBoolaIsClientTransaction,
TUint32aRequestId,
MTransactionAssociation &aAssociation
)[protected]

Parameters

TBool aIsClientTransaction
TUint32 aRequestId
MTransactionAssociation & aAssociation

~CSIPTransactionBase()

~CSIPTransactionBase()[virtual]

Destructor

Member Functions Documentation

AffectsDialogState()

TBool AffectsDialogState()const

Determines whether this transaction has an effect on the associated dialog's state.

ChangeState(CSIPTransactionBase::TState)

voidChangeState(CSIPTransactionBase::TStateaNextState)

Changes the transaction state.

Parameters

CSIPTransactionBase::TState aNextStateState into which transaction moves

CheckAssociationL()

voidCheckAssociationL()const [protected]

Checks that iAssociation is available (not NULL). If iAssociation is NULL, it means user has deleted a resource needed by CSIPTransactionBase, and this function leaves.

ConstructL(RStringF)

voidConstructL(RStringFaType)[protected]

Parameters

RStringF aType

Detach(const MTransactionAssociation &)

voidDetach(const MTransactionAssociation &aAssociation)[virtual]

Clears the MTransactionAssociation. After this the object can't be used anymore and it is expected that user will delete it soon.

Parameters

const MTransactionAssociation & aAssociationObject requesting the detach

IsSIPClientTransaction()

IMPORT_C TBoolIsSIPClientTransaction()const

Checks the if the actual object is of type CSIPClientTransaction.

IsTargetRefresh(RStringF)

TBool IsTargetRefresh(RStringFaType)[static]

Determines whether the transaction type is a target refresh request.

Parameters

RStringF aTypeType of transaction

RequestId()

TUint32 RequestId()const

Obtains the RequestId of the transaction.

ResponseElements()

const CSIPResponseElements *ResponseElements()const [protected]

Gets response elements.

SetAffectsDialogState()

voidSetAffectsDialogState()

Sets this transaction to affect the dialog state.

SetResponseElements(CSIPResponseElements *)

voidSetResponseElements(CSIPResponseElements *aElements)

Stores response elements. Depending on the status code, transaction may enter another state.

Parameters

CSIPResponseElements * aElementsResponse elements, ownership is transferred.

StateL()

IMPORT_C CSIPTransactionBase::TStateStateL()
Gets SIP transaction state
leave
KErrSIPResourceNotAvailable if a required SIP Client API object has been deleted

Type()

IMPORT_C RStringFType()const

Gets the SIP transaction type

__DbgTestInvariant()

void__DbgTestInvariant()const [private]

operator==(const CSIPTransactionBase &)

IMPORT_C TBooloperator==(const CSIPTransactionBase &aTransaction)const

Compares this object to another object also having CSIPTransactionBase base class The function has to be implemented in each of the sub-classes.

Parameters

const CSIPTransactionBase & aTransactiona CSIPTransactionBase object to compare

Member Enumerations Documentation

Enum TState

SIP transaction state

Enumerators

ETrying

Trying state

ECalling

Calling state

EProceeding

Proceeding state

ECompleted

Completed state

EConfirmed

Confirmed state

ETerminated

Terminated state

EConstructing

Object is being constructed and is not yet ready for use

Member Data Documentation

TBool iAffectsDialogState

TBool iAffectsDialogState[private]

MTransactionAssociation * iAssociation

MTransactionAssociation *iAssociation[protected]

Every transaction is associated to exactly one other object: CSIP, CSIPConnection, CSIPRegistrationBinding or CSIPDialogAssocBase

TBool iIsClientTransaction

TBool iIsClientTransaction[private]

TUint32 iRequestId

TUint32 iRequestId[protected]

RequestId received from SIP client

CSIPResponseElements * iResponseElements

CSIPResponseElements *iResponseElements[private]

CSIPTransactionBase::TState iState

CSIPTransactionBase::TState iState[private]

RStringF iType

RStringF iType[private]