CSIPDialogAssocImplementation Class Reference

class CSIPDialogAssocImplementation : public CBase

Implementation class of CSIPDialogAssocBase .

Inherits from

  • CSIPDialogAssocImplementation
Public Member Functions
~CSIPDialogAssocImplementation ()
void AddTransactionL ( CSIPTransactionBase &)
TInt CheckIfStandAlone ()
CSIPClientConnection * ClientConnection ()
CSIPClientConnection & ClientConnectionL ()
void ConnectionLost ()
void CopyHeaderL (const CSIPHeaderBase &, CSIPMessageElements &, TMessageHeaderCleanup &)
void DeletingRefresh ( CSIPRefresh &, TUint32 )
const CSIPDialog & Dialog ()
CSIPDialog & Dialog ()
CSIPTransactionBase * FindTransaction ( TUint32 )
TBool HasTransaction ( RStringF , TBool )
CSIPDialogAssocImplementation * NewL ( RStringF , CSIPDialogAssocBase &, CSIPDialog &)
CSIPDialogAssocImplementation * NewL ( RStringF , CSIPDialogAssocBase &, CSIPDialog &, CSIPServerTransaction &)
void RemoveTransaction (const CSIPTransactionBase &)
CSIPConnection & SIPConnectionL ()
CSIPClientTransaction * SendNonTargetRefreshRequestL ( RStringF , CSIPMessageElements *)
MTransactionAssociation & TransactionAssociation ()
RStringF Type ()
CSIPClientTransaction * UpdateRefreshL ( CSIPRefresh &, CSIPMessageElements *, TBool )
Protected Member Functions
CSIPDialogAssocImplementation ( CSIPDialogAssocBase &, CSIPDialog &)
void ConstructL ( RStringF )
void ConstructL ( RStringF , CSIPServerTransaction &)
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()
Private Attributes
CSIPDialogAssocBase & iAssoc
CSIPDialog & iDialog
TBool iStringPoolOpened
RPointerArray < CSIPTransactionBase > iTransactions
RStringF iType

Constructor & Destructor Documentation

CSIPDialogAssocImplementation(CSIPDialogAssocBase &, CSIPDialog &)

CSIPDialogAssocImplementation ( CSIPDialogAssocBase & aAssoc,
CSIPDialog & aDialog
) [protected]

Parameters

CSIPDialogAssocBase & aAssoc
CSIPDialog & aDialog

~CSIPDialogAssocImplementation()

~CSIPDialogAssocImplementation ( ) [virtual]

Destructor

Member Functions Documentation

AddTransactionL(CSIPTransactionBase &)

void AddTransactionL ( CSIPTransactionBase & aTransaction )

Parameters

CSIPTransactionBase & aTransaction

CheckIfStandAlone()

TInt CheckIfStandAlone ( )

ClientConnection()

CSIPClientConnection * ClientConnection ( )

ClientConnectionL()

CSIPClientConnection & ClientConnectionL ( )

ConnectionLost()

void ConnectionLost ( ) [virtual]

The connection used by dialog association has been lost. Those classes derived from CSIPDialogAssocImplementation , which can contain refreshes must implement this function for terminating the refresh.

ConstructL(RStringF)

void ConstructL ( RStringF aType ) [protected]

Parameters

RStringF aType

ConstructL(RStringF, CSIPServerTransaction &)

void ConstructL ( RStringF aType,
CSIPServerTransaction & aTransaction
) [protected]

Parameters

RStringF aType
CSIPServerTransaction & aTransaction

CopyHeaderL(const CSIPHeaderBase &, CSIPMessageElements &, TMessageHeaderCleanup &)

void CopyHeaderL ( const CSIPHeaderBase & aHeader,
CSIPMessageElements & aElements,
TMessageHeaderCleanup & aHeaderCleanup
) [static]

Makes a copy of aHeader and adds it into aElements and also into headerCleanup.

Parameters

const CSIPHeaderBase & aHeader SIP header
CSIPMessageElements & aElements Message elements
TMessageHeaderCleanup & aHeaderCleanup Information to detach and delete the copy of aHeader from aElements in case leave occurs.

DeletingRefresh(CSIPRefresh &, TUint32)

void DeletingRefresh ( CSIPRefresh & aRefresh,
TUint32 aRefreshId
)

Parameters

CSIPRefresh & aRefresh
TUint32 aRefreshId

Dialog()

const CSIPDialog & Dialog ( ) const

Gets the dialog this dialog association belongs to

Dialog()

CSIPDialog & Dialog ( )

Gets dialog this dialog association belongs to

FindTransaction(TUint32)

CSIPTransactionBase * FindTransaction ( TUint32 aRequestId )

Searches for a transaction with the given aRequestId.

Parameters

TUint32 aRequestId RequestId of a transaction

HasTransaction(RStringF, TBool)

TBool HasTransaction ( RStringF aType,
TBool aIsClientTransaction
)

Checks if this dialog association has a transaction of the given type.

Parameters

RStringF aType Transaction type
TBool aIsClientTransaction ETrue if searching for a client transaction, EFalse if searching for a server transaction

NewL(RStringF, CSIPDialogAssocBase &, CSIPDialog &)

CSIPDialogAssocImplementation * NewL ( RStringF aType,
CSIPDialogAssocBase & aAssoc,
CSIPDialog & aDialog
) [static]

Parameters

RStringF aType
CSIPDialogAssocBase & aAssoc
CSIPDialog & aDialog

NewL(RStringF, CSIPDialogAssocBase &, CSIPDialog &, CSIPServerTransaction &)

CSIPDialogAssocImplementation * NewL ( RStringF aType,
CSIPDialogAssocBase & aAssoc,
CSIPDialog & aDialog,
CSIPServerTransaction & aTransaction
) [static]

Parameters

RStringF aType
CSIPDialogAssocBase & aAssoc
CSIPDialog & aDialog
CSIPServerTransaction & aTransaction

RemoveTransaction(const CSIPTransactionBase &)

void RemoveTransaction ( const CSIPTransactionBase & aTransaction )

Parameters

const CSIPTransactionBase & aTransaction

SIPConnectionL()

CSIPConnection & SIPConnectionL ( )

SendNonTargetRefreshRequestL(RStringF, CSIPMessageElements *)

CSIPClientTransaction * SendNonTargetRefreshRequestL ( RStringF aMethod,
CSIPMessageElements * aElements
) [virtual]
Creates SIP request and sends it to the remote target. This function should be used for sending SIP extension requests within dialog assocation that do not cause sip dialog associations to be created. In SIP terms this request is non target refresh request.
Pre-condition
SIPDialog().State() != CSIPDialog::EInit && SIPDialog().State() != CSIPDialog::ETerminated
Dialog() .Connection().State() == EActive
aMethod != "REGISTER" |"INVITE" | "BYE" | "CANCEL" | "ACK" | "SUBSCRIBE" | "NOTIFY" | "UPDATE" | "PRACK"
leave
KErrSIPInvalidDialogState If dialog's state is not correct
leave
KErrArgument if invalid value has been set to aMethod
leave
KErrSIPResourceNotAvailable if a required SIP Client API object has been deleted

Parameters

RStringF aMethod
CSIPMessageElements * aElements contains optional SIP message headers and body. Ownership is transferred.

TransactionAssociation()

MTransactionAssociation & TransactionAssociation ( )

Type()

RStringF Type ( ) const

Gets dialog association type.

UpdateRefreshL(CSIPRefresh &, CSIPMessageElements *, TBool)

CSIPClientTransaction * UpdateRefreshL ( CSIPRefresh & aRefresh,
CSIPMessageElements * aElements,
TBool aTerminate
)

Parameters

CSIPRefresh & aRefresh
CSIPMessageElements * aElements
TBool aTerminate

Member Data Documentation

CSIPDialogAssocBase & iAssoc

CSIPDialogAssocBase & iAssoc [private]

CSIPDialog & iDialog

CSIPDialog & iDialog [private]

TBool iStringPoolOpened

TBool iStringPoolOpened [private]

RPointerArray< CSIPTransactionBase > iTransactions

RPointerArray < CSIPTransactionBase > iTransactions [private]

RStringF iType

RStringF iType [private]