MTransactionUser Class Reference
Transaction user interface for sending SIP messages, retrieving state of a particular transaction and detaching from transaction.
Public Member Functions
|
|
~MTransactionUser
()
|
TInt
|
ClearTransactionOwner
(
TTransactionId
)
|
TInt
|
ClearTransactionOwner
(
MTransactionOwner
*)
|
void
|
FreeResources
(
MSIPNATBindingObserver
&)
|
void
|
GetLocalAddress
(
TUint32
,
TInetAddr
&)
|
void
|
MakeTagL
(
TDes8
&)
|
TInt
|
NextHopIP
(const
TTransactionId
&,
TInetAddr
&)
|
MTransactionHeaders
*
|
SendAndGetHeadersL
(
TTransactionId
&,
TRegistrationId
,
CSIPRequest
*,
MTransactionOwner
*,
CURIContainer
&, const
TSIPTransportParams
&,
TBool
)
|
void
|
SendCancelL
(
TTransactionId
,
TTransactionId
&,
MTransactionOwner
*)
|
void
|
SendL
(
TTransactionId
&,
TRegistrationId
,
CSIPRequest
*,
MTransactionOwner
*,
CURIContainer
&, const
TSIPTransportParams
&,
TBool
)
|
void
|
SendL
(
TTransactionId
,
CSIPResponse
*, const
TSIPTransportParams
&)
|
void
|
SendL
(
TTransactionId
,
CSIPResponse
*,
MTransactionOwner
*, const
TSIPTransportParams
&)
|
MTransactionHeaders
*
|
TransactionHeadersL
(
TTransactionId
)
|
Constructor & Destructor Documentation
~MTransactionUser()
~MTransactionUser
|
(
|
)
|
[inline, virtual]
|
Member Functions Documentation
ClearTransactionOwner(TTransactionId)
The transaction with the specified transaction id clears its
MTransactionOwner
callback and won't send any more events. Transaction won't be stopped prematurely, it runs silently to completion.
This function doesn't leave in case of error, as it is thought this function is usually also called from destructors.
-
Pre-condition
-
aTransactionId != KSIPEmptyTransactionId
ClearTransactionOwner(MTransactionOwner *)
Transactions using the specified callback clear their
MTransactionOwner
callback and won't send any more events. Transactions won't be stopped prematurely, they run silently to completion.
This function doesn't leave in case of error, as it is thought this function is usually also called from destructors.
-
Pre-condition
-
aObserver != NULL
FreeResources(MSIPNATBindingObserver &)
Frees all the resources reserved for the observer.
GetLocalAddress(TUint32, TInetAddr &)
void
|
GetLocalAddress
|
(
|
TUint32
|
aIapId,
|
|
TInetAddr
&
|
aAddr
|
|
)
|
const [pure virtual]
|
Obtain the local address associated with the given IAP identifier.
Parameters
TUint32
aIapId
|
IAP identifier
|
TInetAddr
& aAddr
|
Local address will be written here
|
MakeTagL(TDes8 &)
void
|
MakeTagL
|
(
|
TDes8
&
|
aTag
|
)
|
const [pure virtual]
|
Fills the descriptor with random characters.
Parameters
TDes8
& aTag
|
Descriptor into which the random characters are added. The existing characters are not overwritten. Adds as many characters as there is space left in the aTag.
|
NextHopIP(const TTransactionId &, TInetAddr &)
TInt
|
NextHopIP
|
(
|
const
TTransactionId
&
|
aTransactionId,
|
|
TInetAddr
&
|
aAddr
|
|
)
|
[pure virtual]
|
Obtains the next hop address associated with the given transaction id.
Parameters
const
TTransactionId
& aTransactionId
|
transaction identifier
|
TInetAddr
& aAddr
|
Local address will be written here
|
SendAndGetHeadersL(TTransactionId &, TRegistrationId, CSIPRequest *, MTransactionOwner *, CURIContainer &, const TSIPTransportParams &, TBool)
Send a SIP request message. In case of error, function leaves and the ownership of the SIP Request isn't transferred.
-
Pre-condition
-
aRequest!=NULL
-
aObserver!=NULL
Parameters
TTransactionId
& aTransactionId
|
IN: If the request is ACK, this parameter should be a TransactionId of the INVITE transaction. OUT: If the request is not ACK, a new transaction is created and its TransactionId is filled here.
|
TRegistrationId
aRegistrationId
|
IN: a registration id by which TU tries to find an outbound proxy for the request.
|
CSIPRequest
* aRequest
|
IN: SIP request message. Ownership is transferred.
|
MTransactionOwner
* aObserver
|
IN: Callback where the transaction will send events. Ownership isn't transferred.
|
CURIContainer
& aRemoteTarget
|
IN: Remote target of the request.
|
const
TSIPTransportParams
& aTransportParams
|
IN: Transport parameters to be used when handing the request to SIP Connection Mgr.
|
TBool
aDeleteRequest
|
If ETrue, TransactionUser will delete aRequest when the transaction ends. If EFalse, aRequest is not deleted by TransactionUser.
|
SendCancelL(TTransactionId, TTransactionId &, MTransactionOwner *)
Send a CANCEL request. In case of error, function leaves and the ownership of the aCancel isn't transferred. CANCEL can only be sent when the INVITE client transaction has received a provisional response, but hasn't yet received a final response.
-
Pre-condition
-
aCancel!=NULL
-
aObserver!=NULL
Parameters
TTransactionId
aInviteTaId
|
TransactionId of the INVITE client transaction to be canceled.
|
TTransactionId
& aCancelTaId
|
OUT: TransactionId of the transaction sending CANCEL
|
MTransactionOwner
* aObserver
|
IN: Callback where the CANCEL transaction will send events. Ownership isn't transferred.
|
SendL(TTransactionId &, TRegistrationId, CSIPRequest *, MTransactionOwner *, CURIContainer &, const TSIPTransportParams &, TBool)
Send a SIP request message. In case of error, function leaves and the ownership of the SIP Request isn't transferred.
-
Pre-condition
-
aRequest!=NULL
-
aObserver!=NULL
Parameters
TTransactionId
& aTransactionId
|
IN: If the request is ACK, this parameter should be a TransactionId of the INVITE transaction. OUT: If the request is not ACK, a new transaction is created and its TransactionId is filled here.
|
TRegistrationId
aRegistrationId
|
IN: a registration id by which TU tries to find an outbound proxy for the request.
|
CSIPRequest
* aRequest
|
IN: SIP request message. Ownership is transferred.
|
MTransactionOwner
* aObserver
|
IN: Callback where the transaction will send events. Ownership isn't transferred.
|
CURIContainer
& aRemoteTarget
|
IN: Remote target of the request.
|
const
TSIPTransportParams
& aTransportParams
|
IN: Transport parameters to be used when handing the request to SIP Connection Mgr.
|
TBool
aDeleteRequest
|
If ETrue, TransactionUser will delete aRequest when the transaction ends. If EFalse, aRequest is not deleted by TransactionUser.
|
SendL(TTransactionId, CSIPResponse *, const TSIPTransportParams &)
Send a SIP response message, using an existing transaction. Fills From- and To-header and other transaction related headers if they are missing. In case of error, function leaves and the ownership of aResponse is NOT transferred.
-
Pre-condition
-
transaction identified by aTransactionId exists,
-
aResponse!=NULL
Parameters
TTransactionId
aTransactionId
|
Identifies the transaction
|
CSIPResponse
* aResponse
|
IN: SIP response message. The ownership is transferred.
|
const
TSIPTransportParams
& aTransportParams
|
IN: Transport parameters to be used when handing the response to SIP Connection Mgr.
|
SendL(TTransactionId, CSIPResponse *, MTransactionOwner *, const TSIPTransportParams &)
Send a SIP response using an existing transaction and specify a new callback for the transaction to use. Fills From- and To-header and other transaction related headers if they are missing. In case of error, function leaves and the ownership of aResponse is NOT transferred.
-
Pre-condition
-
transaction identified by aTransactionId exists
-
aResponse!=NULL
-
aNewObserver!=NULL
Parameters
TTransactionId
aTransactionId
|
Identifies the transaction
|
CSIPResponse
* aResponse
|
IN: SIP response message. Ownership transferred.
|
MTransactionOwner
* aNewObserver
|
IN: New callback replacing the existing callback used by the the transaction. Ownership isn't transferred.
|
const
TSIPTransportParams
& aTransportParams
|
IN: Transport parameters to be used when handing the response to SIP Connection Mgr.
|
TransactionHeadersL(TTransactionId)
Retrieve the transaction related headers of the SIP message that created the transaction. Leaves if memory allocation for the requested headers fails.
Parameters
TTransactionId
aTransactionId
|
the transaction whose SIP headers are requested.
|
Member Enumerations Documentation
Enum TRandomStringLength
Enumerators
KTagLength = 20
|
|
KCallIDLength = 30
|
|
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.