CMceSecureInSession Class Reference

class CMceSecureInSession : public CMceInSession

Class for mobile terminated secure MCE sessions.

CMceSecureInSession represents incoming invitation to join in a secure session.

The characteristics of the session are defined by remote terminal. Theses charactereistics are defined using SDP and are turned by MCE server into structure of media streams attached into the session. The user of this class is then responsible to either reject accept the invitation.

Accepting the invitation is executed in two steps. First after receiving the invitation the user must complete the media structure. Streams attached to the session are not complete, but they must be completed by the user. Those componens defined in SDP are put automatically into media structure (like streams and RTP sinks and sources), but other relations must be completed by user. When media structure is complete, UpdateL method is called and session establishement continues with second step.

After all media resources are succesfully negotiated and reserved, session state is changed to Proceeding, and end used can be alarmed about incoming invitation. Typically, at this state 180 Ringing response is sent to network. If end user accepts the invitation, 200 OK is sent to network and session is established.

After the session has been succesfylly established, it can be later updated and must be finally terminated.

This class is never instantiated by user, but the ownership is in any case transferred to it. See class MMceInSessionObserver.

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

mceclient.lib

Inherits from

Public Member Functions
CMceSecureInSession(CMceManager *, TUint32)
~CMceSecureInSession()
const RArray< TMceCryptoContext > &CryptoContexts()
voidInitializeInSessionL(MMceComSerializationContext &, TBool)
CMceSecureInSession *NewL(RReadStream &, CMceManager &, TUint32, TBool)
CMceSecureInSession *NewL()
voidSetCryptoContextsL(const RArray< TMceCryptoContext > &)
const RArray< TMceCryptoContext > &SupportedCryptoContextsL()
TMceSessionType Type()
Private Member Functions
voidConstructL(const TDesC8 &, const TDesC8 &)
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()
CMceInSession::AcceptL()
CMceInSession::AcceptL(const TDesC8 &,TUint32,CDesC8Array *,HBufC8 *,HBufC8 *)
CMceInSession::CMceInSession(CMceManager *,TUint32)
CMceInSession::RejectL()
CMceInSession::RejectL(const TDesC8 &,TUint32,CDesC8Array *,HBufC8 *,HBufC8 *)
CMceInSession::RespondL(const TDesC8 &,TUint32,CDesC8Array *,HBufC8 *,HBufC8 *)
CMceInSession::RingL(CDesC8Array *,HBufC8 *,HBufC8 *)
CMceInSession::StreamInitializeCondition(CMceMediaStream &)const
CMceInSession::~CMceInSession()
CMceSession::AddBundleL(CMceStreamBundle *)
CMceSession::AddStreamL(CMceMediaStream *)
CMceSession::AssociatedEventsL()const
CMceSession::AssociatedRefersL()const
CMceSession::BaseFactory()
CMceSession::Bundles()const
CMceSession::CMceSession(CMceManager *,TUint32)
CMceSession::ConnectionActive()const
CMceSession::ConstructL(TBool)
CMceSession::ControlPathSecurityLevel()const
CMceSession::DialogId()const
CMceSession::DoAddStreamL(CMceMediaStream *)
CMceSession::ErrorOccuredL(TInt)
CMceSession::EventReceivedL(TMceIds &)
CMceSession::EventReceivedL(TMceIds &,CMceMsgBase &)
CMceSession::EventReceivedL(TMceIds &,CMceMsgBase &,HBufC8 *)
CMceSession::ExternalizeFlatL(RWriteStream &)
CMceSession::ExternalizeL(MMceComSerializationContext &)
CMceSession::FCErrorOccurred(TInt)
CMceSession::FCMessageReceived(HBufC8 *)
CMceSession::Factory()
CMceSession::GetModifierL(TMceSessionModifier,TUint &)const
CMceSession::GetSIPParams(CDesC8Array *&,HBufC8 *&,CDesC8Array *&)
CMceSession::ITCSender()const
CMceSession::Id()const
CMceSession::IncomingUpdateL(CMceInSession *,HBufC8 *)
CMceSession::InitializeL(TBool,TBool)
CMceSession::InternalizeFlatL(RReadStream &)
CMceSession::InternalizeL(MMceComSerializationContext &)
CMceSession::IsZombie()
CMceSession::Manager()const
CMceSession::Originator()const
CMceSession::PrepareForITC(TMceIds &)
CMceSession::Profile()const
CMceSession::Recipient()const
CMceSession::RemoveBundleL(CMceStreamBundle &)
CMceSession::RemoveStreamL(CMceMediaStream &)
CMceSession::SIPParamsCleanup(TAny *)
CMceSession::SendITCEventL(TUint8)
CMceSession::SendRequestL(const TDesC8 &,CDesC8Array *,HBufC8 *,HBufC8 *)
CMceSession::SendResponseL(TMceTransactionId,const TDesC8 &,TUint32,CDesC8Array *,HBufC8 *,HBufC8 *)
CMceSession::SerializationId()const
CMceSession::ServiceType()const
CMceSession::SessionSDPLinesL()
CMceSession::SessionTimer()const
CMceSession::SetFCObserver(MMceFcMsgObserver *)
CMceSession::SetModifierL(TMceSessionModifier,TUint)
CMceSession::SetSIPParams(CDesC8Array *,HBufC8 *,CDesC8Array *)
CMceSession::SetServiceTypeL(TUint32)
CMceSession::SetSessionSDPLinesL(CDesC8Array *)
CMceSession::SetZombie(CMceInSession &)
CMceSession::State()const
CMceSession::Streams()const
CMceSession::SynchronizeL(TMceIds &)
CMceSession::TerminateL(CDesC8Array *,HBufC8 *,HBufC8 *)
CMceSession::UpdateL(TUint32,CDesC8Array *,HBufC8 *,HBufC8 *,CDesC8Array *)
CMceSession::~CMceSession()
Inherited Enumerations
CMceSession:TControlPathSecurityLevel
CMceSession:TReason
CMceSession:TState
Private Attributes
RArray< TMceCryptoContext >iTemp
Inherited Attributes
CMceSession::iFCObserver
CMceSession::iFlatData
CMceSession::iManager
CMceSession::iMediaStreams
CMceSession::iProfileId
CMceSession::iReceiver
CMceSession::iSender

Constructor & Destructor Documentation

CMceSecureInSession(CMceManager *, TUint32)

CMceSecureInSession(CMceManager *aManager,
TUint32aProfileId
)

C++ default constructor.

Parameters

CMceManager * aManager
TUint32 aProfileId

~CMceSecureInSession()

IMPORT_C~CMceSecureInSession()

Destructor

Member Functions Documentation

ConstructL(const TDesC8 &, const TDesC8 &)

voidConstructL(const TDesC8 &aOriginator,
const TDesC8 &aRecipient
)[private]

second-phase constructor

Parameters

const TDesC8 & aOriginator
const TDesC8 & aRecipient

CryptoContexts()

const RArray< TMceCryptoContext > &CryptoContexts()const [virtual]

InitializeInSessionL(MMceComSerializationContext &, TBool)

voidInitializeInSessionL(MMceComSerializationContext &aSerCtx,
TBoolaUpdateSession
)

Two-phased constructor.

Parameters

MMceComSerializationContext & aSerCtx
TBool aUpdateSession

NewL(RReadStream &, CMceManager &, TUint32, TBool)

CMceSecureInSession *NewL(RReadStream &aReadStream,
CMceManager &aManager,
TUint32aProfileId,
TBoolaUpdateSession = EFalse
)[static]

Two-phased constructor.

Parameters

RReadStream & aReadStream
CMceManager & aManager
TUint32 aProfileId
TBool aUpdateSession = EFalse

NewL()

CMceSecureInSession *NewL()[static]

Two-phased constructor. For temporay use only.

SetCryptoContextsL(const RArray< TMceCryptoContext > &)

voidSetCryptoContextsL(const RArray< TMceCryptoContext > &aArray)[virtual]

Parameters

const RArray< TMceCryptoContext > & aArray

SupportedCryptoContextsL()

const RArray< TMceCryptoContext > &SupportedCryptoContextsL()const [virtual]

Type()

TMceSessionType Type()const [virtual]

Returns the type of the session.

Member Data Documentation

RArray< TMceCryptoContext > iTemp

RArray< TMceCryptoContext >iTemp[private]