CMceRefer Class Reference

class CMceRefer : public CBase

Base class for MCE refers, inherited by both CMceInRefer and CMceOutRefer .

CMceRefer represents peer-to-peer connection made with remote terminal. This connection is also known as dialog and it is set up using SIP REFER method.

MCE refers are typically used for asking remote terminal to perform some action. One such action is session transfer.

The refer is finally terminated by the endpoint performing the action. Refer can implicitically also create an event which is used to inform how the action proceeds. In such case refer and event and tied together and are finally terminated simultaneously.

If for any reason instance of this class is deleted while in active state, event is automatically terminated by MCE server.

mceclient.lib

Inherits from

Public Member Functions
~CMceRefer ()
IMPORT_C RPointerArray < CMceEvent > * AssociatedEventsL ()
IMPORT_C RPointerArray < CMceRefer > * AssociatedRefersL ()
IMPORT_C CMceSession * AssociatedSession ()
void DetachReferEvent ()
TUint32 DialogId ()
void ErrorOccuredL ( TInt )
void EventReceivedL ( TMceIds &)
void EventReceivedL ( TMceIds &, CMceMsgBase &)
void EventReceivedL ( TMceIds &, CMceMsgBase &, HBufC8 *)
void EventStateChangedL ( TMceEvent &)
CMceItcSender & ITCSender ()
TUint32 Id ()
TBool IsInRefer ()
CMceManager & Manager ()
IMPORT_C const TDesC8 & Originator ()
TUint32 ProfileId ()
IMPORT_C const TDesC8 & Recipient ()
CMceEvent * ReferEvent ()
IMPORT_C const TDesC8 & ReferTo ()
IMPORT_C TState State ()
CMceEvent * TransferEventOwnership ()
IMPORT_C TType Type ()
Protected Member Functions
CMceRefer ( CMceManager &, TUint32 , TUint32 , TType )
void ConstructL ( HBufC8 *, HBufC8 *, HBufC8 *, CDesC8Array *)
void PrepareForITC ( TMceIds &)
TState ResolveStateL ()
Private Member Functions
void EventReceivedL ( TMceEvent &)
void HandleEventL ( TMceEvent &)
void HandleStateChangedL ( TMceEvent &)
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()
Public Member Enumerations
enum TState { EIdle , EPending , EAccepted , ETerminated }
enum TType { ENoSuppression , ESuppressed , EMultipleRefer }
Protected Attributes
TUint32 iDialogId
CMceEvent * iEvent
TUint32 iId
CMceManager & iManager
HBufC8 * iOriginator
CMceEvent * iOwnedEvent
TUint32 iProfileId
CMceReferReceiver * iReceiver
HBufC8 * iRecipient
HBufC8 * iReferTo
CMceItcSender * iSender
TState iState
TType iType
Private Attributes
TAny * iReserved

Constructor & Destructor Documentation

CMceRefer(CMceManager &, TUint32, TUint32, TType)

CMceRefer ( CMceManager & aManager,
TUint32 aProfileId,
TUint32 aDialogId,
TType aType
) [protected]

C++ default constructor.

Parameters

CMceManager & aManager
TUint32 aProfileId id of the sip profile used for the even
TUint32 aDialogId id of the dialog
TType aType type of the refer

~CMceRefer()

~CMceRefer ( ) [virtual]

Destructor.

Member Functions Documentation

AssociatedEventsL()

IMPORT_C RPointerArray < CMceEvent > * AssociatedEventsL ( ) const

Returns the associated events, if any.

AssociatedRefersL()

IMPORT_C RPointerArray < CMceRefer > * AssociatedRefersL ( ) const

Returns the associated refers, if any.

AssociatedSession()

IMPORT_C CMceSession * AssociatedSession ( ) const

Returns the associated session, if any.

ConstructL(HBufC8 *, HBufC8 *, HBufC8 *, CDesC8Array *)

void ConstructL ( HBufC8 * aRecipient,
HBufC8 * aReferTo,
HBufC8 * aOriginator,
CDesC8Array * params
) [protected]

second-phase constructor

Parameters

HBufC8 * aRecipient
HBufC8 * aReferTo
HBufC8 * aOriginator
CDesC8Array * params

DetachReferEvent()

void DetachReferEvent ( )

Detach the refer event

DialogId()

TUint32 DialogId ( ) const

Dialog ID

ErrorOccuredL(TInt)

void ErrorOccuredL ( TInt aError )

Handling of error

Parameters

TInt aError the error

EventReceivedL(TMceIds &)

void EventReceivedL ( TMceIds & aId )

Handles reception of event update

Parameters

TMceIds & aId id of object whose state is needed to be updated

EventReceivedL(TMceIds &, CMceMsgBase &)

void EventReceivedL ( TMceIds & aId,
CMceMsgBase & aMessage
)

Handles reception of event update

Parameters

TMceIds & aId id of object whose state is needed to be updated
CMceMsgBase & aMessage the message

EventReceivedL(TMceIds &, CMceMsgBase &, HBufC8 *)

void EventReceivedL ( TMceIds & aId,
CMceMsgBase & aMessage,
HBufC8 * aContent
)

Handles reception of event update

Parameters

TMceIds & aId id of object whose state is needed to be updated
CMceMsgBase & aMessage the message
HBufC8 * aContent the content

EventReceivedL(TMceEvent &)

void EventReceivedL ( TMceEvent & aEvent ) [private]

Traversal event handler

Parameters

TMceEvent & aEvent the event

EventStateChangedL(TMceEvent &)

void EventStateChangedL ( TMceEvent & aEvent )

The state of the event established by this refer has changed.

Parameters

TMceEvent & aEvent the ITC event.

HandleEventL(TMceEvent &)

void HandleEventL ( TMceEvent & aEvent ) [private]

Handles event

Parameters

TMceEvent & aEvent the event

HandleStateChangedL(TMceEvent &)

void HandleStateChangedL ( TMceEvent & aEvent ) [private]

Handles state change

Parameters

TMceEvent & aEvent the event

ITCSender()

CMceItcSender & ITCSender ( ) const

Gets sender for ITC.

Id()

TUint32 Id ( ) const

ID

IsInRefer()

TBool IsInRefer ( ) const [pure virtual]

Returns truth value, is the refer in-refer or not.

Manager()

CMceManager & Manager ( ) const

Gets manager

Originator()

IMPORT_C const TDesC8 & Originator ( ) const

Returns the originator of the refer.

PrepareForITC(TMceIds &)

void PrepareForITC ( TMceIds & aId ) [protected]

Prepares ids for ITC

Parameters

TMceIds & aId ITC ids

ProfileId()

TUint32 ProfileId ( ) const

Gets SIP profile id.

Recipient()

IMPORT_C const TDesC8 & Recipient ( ) const

Returns the recipient of the refer.

ReferEvent()

CMceEvent * ReferEvent ( ) const

Gets the event established by this refer. Ownership is not transfered.

ReferTo()

IMPORT_C const TDesC8 & ReferTo ( ) const

Returns the ReferTo header.

ResolveStateL()

TState ResolveStateL ( ) [protected]

Resolves the proper refer state according to the state of refer event.

State()

IMPORT_C TState State ( ) const

Returns the state of the refer.

TransferEventOwnership()

CMceEvent * TransferEventOwnership ( )

Transfers the owned refer event to not event. Called, when the application takes the ownership of refer event.

Type()

IMPORT_C TType Type ( ) const

Returns the refer type

Member Enumerations Documentation

Enum TState

Enumerators

EIdle
EPending
EAccepted
ETerminated

Enum TType

Enumerators

ENoSuppression
ESuppressed
EMultipleRefer

Member Data Documentation

TUint32 iDialogId

TUint32 iDialogId [protected]

dialog id

CMceEvent * iEvent

CMceEvent * iEvent [protected]

The event established by this REFER, not owned.

TUint32 iId

TUint32 iId [protected]

ID

CMceManager & iManager

CMceManager & iManager [protected]

Event manager,not owned

HBufC8 * iOriginator

HBufC8 * iOriginator [protected]

The originator

CMceEvent * iOwnedEvent

CMceEvent * iOwnedEvent [protected]

The event established by this REFER, owned.

TUint32 iProfileId

TUint32 iProfileId [protected]

SIP profile id

CMceReferReceiver * iReceiver

CMceReferReceiver * iReceiver [protected]

Event receiver, owned

HBufC8 * iRecipient

HBufC8 * iRecipient [protected]

The recipient

HBufC8 * iReferTo

HBufC8 * iReferTo [protected]

The event header

TAny * iReserved

TAny * iReserved [private]

CMceItcSender * iSender

CMceItcSender * iSender [protected]

Sender, owned

TState iState

TState iState [protected]

Current event state

TType iType

TType iType [protected]

Refer type