CSIPImplementation Class Reference

class CSIPImplementation : public CBase

Implementation class for connecting to SIP server.

Inherits from

Public Member Functions
~CSIPImplementation ()
void AddConnectionL ( CSIPConnectionImplementation &, TUint32 )
void AddDigestL ( CSIPHttpDigest &)
void AddTransactionL ( CSIPTransactionBase &)
void ChallengeReceivedInRefreshL ( TUint32 , TUint32 , CSIPResponseElements *, MSIPHttpDigestChallengeObserver2 &)
void ChallengeReceivedL ( TUint32 , CSIPResponseElements *, MSIPHttpDigestChallengeObserver2 &)
CSIPClientConnection * ClientConnection ()
CSIPClientConnection & ClientConnectionL ()
CSIPConnection * Connection ( TUint32 )
CSIPClientTransaction * CreateTransactionL ( TUint32 , CSIPResponseElements *, CSIPRefresh *)
void IgnoreChallenges (const CSIPClientTransaction &, CSIPHttpDigest &)
void IncomingRequestL ( TUint32 , CSIPRequestElements *, TUint32 )
CDialogState * InitialDialogState ()
CRegistrationState * InitialRegisterState ()
TBool IsSecurityHandlingEnabled ()
TBool IsSigCompSupportedL ()
HBufC8 * NegotiatedSecurityMechanismL (const TDesC8 &)
CSIPImplementation * NewL (const TUid &, MSIPObserver &)
void RemoveConnection (const CSIPConnection &)
void RemoveDigest (const CSIPHttpDigest &)
void RemoveTransaction (const CSIPTransactionBase &)
CSIPClient & SIPClient ()
CSIPConnection & SIPConnectionL ()
void SetSecurityHandlingL ( TBool )
CDesC8Array * SupportedSecurityMechanismsL ()
void TimeOut ( TUint32 )
Private Member Functions
CSIPImplementation ( MSIPObserver &)
void ConstructL (const TUid &)
UNIT_TEST (CSIP_Test)
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
RPointerArray < CSIPConnection > iConnections
CDialogConfirmed * iDialogConfirmed
CDialogEarly * iDialogEarly
CDialogTerminated * iDialogTerminated
CDialogTrying * iDialogTrying
RPointerArray < CSIPHttpDigest > iDigests
MSIPObserver & iObserver
RPointerArray < CPendingTransaction > iPendingServerTransactions
CRegistered * iRegistered
CRegistering * iRegistering
CSIPClient * iSIPClient
TBool iSecurityHandlingEnabled
TUid iUid
CUnregistered * iUnregistered
CUnregistering * iUnregistering

Constructor & Destructor Documentation

CSIPImplementation(MSIPObserver &)

CSIPImplementation ( MSIPObserver & aObserver ) [private]

Parameters

MSIPObserver & aObserver

~CSIPImplementation()

~CSIPImplementation ( )

Destructor.

Member Functions Documentation

AddConnectionL(CSIPConnectionImplementation &, TUint32)

void AddConnectionL ( CSIPConnectionImplementation & aConnImplementation,
TUint32 aIapId
)

Adds a new connection into CSIPImplementation .

Parameters

CSIPConnectionImplementation & aConnImplementation Implementation of the connection to add
TUint32 aIapId IAP-id

AddDigestL(CSIPHttpDigest &)

void AddDigestL ( CSIPHttpDigest & aDigest )

Parameters

CSIPHttpDigest & aDigest CSIPHttpDigest object to attach

AddTransactionL(CSIPTransactionBase &)

void AddTransactionL ( CSIPTransactionBase & aTransaction )

Parameters

CSIPTransactionBase & aTransaction

ChallengeReceivedInRefreshL(TUint32, TUint32, CSIPResponseElements *, MSIPHttpDigestChallengeObserver2 &)

void ChallengeReceivedInRefreshL ( TUint32 aRefreshId,
TUint32 aRequestId,
CSIPResponseElements * aResponse,
MSIPHttpDigestChallengeObserver2 & aObserver
)

Parameters

TUint32 aRefreshId
TUint32 aRequestId
CSIPResponseElements * aResponse
MSIPHttpDigestChallengeObserver2 & aObserver

ChallengeReceivedL(TUint32, CSIPResponseElements *, MSIPHttpDigestChallengeObserver2 &)

void ChallengeReceivedL ( TUint32 aRequestId,
CSIPResponseElements * aResponse,
MSIPHttpDigestChallengeObserver2 & aObserver
)

Parameters

TUint32 aRequestId
CSIPResponseElements * aResponse
MSIPHttpDigestChallengeObserver2 & aObserver

ClientConnection()

CSIPClientConnection * ClientConnection ( )

ClientConnectionL()

CSIPClientConnection & ClientConnectionL ( )

Connection(TUint32)

CSIPConnection * Connection ( TUint32 aIapId ) const

Checks if the user has a connection created for given IAP-id

Parameters

TUint32 aIapId IAP-id

ConstructL(const TUid &)

void ConstructL ( const TUid & aUid ) [private]

Parameters

const TUid & aUid

CreateTransactionL(TUint32, CSIPResponseElements *, CSIPRefresh *)

CSIPClientTransaction * CreateTransactionL ( TUint32 aRequestId,
CSIPResponseElements * aResponse,
CSIPRefresh * aRefresh
)

Parameters

TUint32 aRequestId
CSIPResponseElements * aResponse
CSIPRefresh * aRefresh

IgnoreChallenges(const CSIPClientTransaction &, CSIPHttpDigest &)

void IgnoreChallenges ( const CSIPClientTransaction & aTransaction,
CSIPHttpDigest & aDigest
)

Ignore each challenge present in the response in the transaction.

Parameters

const CSIPClientTransaction & aTransaction Client transaction
CSIPHttpDigest & aDigest HTTP digest

IncomingRequestL(TUint32, CSIPRequestElements *, TUint32)

void IncomingRequestL ( TUint32 aIapId,
CSIPRequestElements * aElements,
TUint32 aRequestId
)

Request has been received from network.

Parameters

TUint32 aIapId IAP-id for which the user should create a CSIPConnection
CSIPRequestElements * aElements Some SIP headers of the received request. Ownership is transferred.
TUint32 aRequestId RequestId associated with the received request

InitialDialogState()

CDialogState * InitialDialogState ( )

Obtains the initial state for CSIPDialog

InitialRegisterState()

CRegistrationState * InitialRegisterState ( )

Obtains the initial state for CSIPRegistrations

IsSecurityHandlingEnabled()

TBool IsSecurityHandlingEnabled ( ) const

IsSigCompSupportedL()

TBool IsSigCompSupportedL ( ) const

Checks if the signalling compression (SigComp) is supported. Leaves on failure with a system wide error code.

NegotiatedSecurityMechanismL(const TDesC8 &)

HBufC8 * NegotiatedSecurityMechanismL ( const TDesC8 & aHop ) const

Gets negotiated security mechanism with the next hop on the signaling path.

Parameters

const TDesC8 & aHop the next hop's FQDN or numeric IP address

NewL(const TUid &, MSIPObserver &)

CSIPImplementation * NewL ( const TUid & aUid,
MSIPObserver & aObserver
) [static]

Two-phased constructor.

Parameters

const TUid & aUid an unique id that identifies client
MSIPObserver & aObserver a observer for asynchronous event

RemoveConnection(const CSIPConnection &)

void RemoveConnection ( const CSIPConnection & aConnection )

Detach a connection from CSIPImplementation

Parameters

const CSIPConnection & aConnection Connection to remove

RemoveDigest(const CSIPHttpDigest &)

void RemoveDigest ( const CSIPHttpDigest & aDigest )

Parameters

const CSIPHttpDigest & aDigest CSIPHttpDigest object to remove

RemoveTransaction(const CSIPTransactionBase &)

void RemoveTransaction ( const CSIPTransactionBase & aTransaction )

Parameters

const CSIPTransactionBase & aTransaction

SIPClient()

CSIPClient & SIPClient ( )

Obtains the used CSIPClient instance

SIPConnectionL()

CSIPConnection & SIPConnectionL ( )

SetSecurityHandlingL(TBool)

void SetSecurityHandlingL ( TBool aEnabled )

Parameters

TBool aEnabled

SupportedSecurityMechanismsL()

CDesC8Array * SupportedSecurityMechanismsL ( ) const

Gets all supported security mechanisms

TimeOut(TUint32)

void TimeOut ( TUint32 aRequestId )

The transcation related to the received SIP request timed out and it has been destroyed. This happens if the user fails to create a SIP connection and does not send an appropriate SIP response.

Parameters

TUint32 aRequestId RequestId of the request

UNIT_TEST(CSIP_Test)

UNIT_TEST ( CSIP_Test ) const [private]

Parameters

CSIP_Test

Member Data Documentation

RPointerArray< CSIPConnection > iConnections

RPointerArray < CSIPConnection > iConnections [private]

CDialogConfirmed * iDialogConfirmed

CDialogConfirmed * iDialogConfirmed [private]

CDialogEarly * iDialogEarly

CDialogEarly * iDialogEarly [private]

CDialogTerminated * iDialogTerminated

CDialogTerminated * iDialogTerminated [private]

CDialogTrying * iDialogTrying

CDialogTrying * iDialogTrying [private]

RPointerArray< CSIPHttpDigest > iDigests

RPointerArray < CSIPHttpDigest > iDigests [private]

MSIPObserver & iObserver

MSIPObserver & iObserver [private]

RPointerArray< CPendingTransaction > iPendingServerTransactions

RPointerArray < CPendingTransaction > iPendingServerTransactions [private]

CRegistered * iRegistered

CRegistered * iRegistered [private]

CRegistering * iRegistering

CRegistering * iRegistering [private]

CSIPClient * iSIPClient

CSIPClient * iSIPClient [private]

TBool iSecurityHandlingEnabled

TBool iSecurityHandlingEnabled [private]

TUid iUid

TUid iUid [private]

CUnregistered * iUnregistered

CUnregistered * iUnregistered [private]

CUnregistering * iUnregistering

CUnregistering * iUnregistering [private]