#include <mw/siptransactionbase.h>
Link against: sipclient
class CSIPTransactionBase : public CBase |
Protected Attributes | |
---|---|
MTransactionAssociation * | iAssociation |
TUint32 | iRequestId |
Public Member Enumerations | |
---|---|
enum | TState { ETrying, ECalling, EProceeding, ECompleted, ..., EConstructing } |
Public Member Functions | |
---|---|
virtual | ~CSIPTransactionBase() |
TBool | AffectsDialogState() |
void | ChangeState(CSIPTransactionBase::TState) |
virtual void | Detach(const MTransactionAssociation &) |
IMPORT_C TBool | IsSIPClientTransaction() |
TBool | IsTargetRefresh(RStringF) |
TUint32 | RequestId() |
void | SetAffectsDialogState() |
void | SetResponseElements(CSIPResponseElements *) |
IMPORT_C CSIPTransactionBase::TState | StateL() |
IMPORT_C RStringF | Type() |
IMPORT_C TBool | operator==(const CSIPTransactionBase &) |
Protected Member Functions | |
---|---|
CSIPTransactionBase(TBool, TUint32, MTransactionAssociation &) | |
void | CheckAssociationL() |
void | ConstructL(RStringF) |
const CSIPResponseElements * | ResponseElements() |
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.
MTransactionAssociation * | iAssociation | [protected] |
Every transaction is associated to exactly one other object: CSIP, CSIPConnection, CSIPRegistrationBinding or CSIPDialogAssocBase
SIP transaction state
Enumerator | Value | Description |
---|---|---|
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 |
CSIPTransactionBase | ( | TBool | aIsClientTransaction, |
TUint32 | aRequestId, | ||
MTransactionAssociation & | aAssociation | ||
) | [protected] |
TBool | AffectsDialogState | ( | ) | const |
Determines whether this transaction has an effect on the associated dialog's state.
void | ChangeState | ( | CSIPTransactionBase::TState | aNextState | ) |
Changes the transaction state.
Parameters | |
---|---|
aNextState | State into which transaction moves |
void | CheckAssociationL | ( | ) | 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.
void | ConstructL | ( | RStringF | aType | ) | [protected] |
void | Detach | ( | 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 | |
---|---|
aAssociation | Object requesting the detach |
IMPORT_C TBool | IsSIPClientTransaction | ( | ) | const |
Checks the if the actual object is of type CSIPClientTransaction.
const CSIPResponseElements * | ResponseElements | ( | ) | const [protected] |
Gets response elements.
void | SetAffectsDialogState | ( | ) |
Sets this transaction to affect the dialog state.
void | SetResponseElements | ( | CSIPResponseElements * | aElements | ) |
Stores response elements. Depending on the status code, transaction may enter another state.
Parameters | |
---|---|
aElements | Response elements, ownership is transferred. |
IMPORT_C CSIPTransactionBase::TState | StateL | ( | ) |
Leave Codes | |
---|---|
KErrSIPResourceNotAvailable | if a required SIP Client API object has been deleted |
IMPORT_C TBool | operator== | ( | 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 | |
---|---|
aTransaction | a CSIPTransactionBase object to compare |