CMceSipExtensions Class Reference

class CMceSipExtensions : public CBase
Class for modeling the level of support for SIP extensions for local and remote participants of a session.
Since

Inherits from

Constructor & Destructor Documentation

CMceSipExtensions()

CMceSipExtensions ( ) [private]

Constructor

~CMceSipExtensions()

~CMceSipExtensions ( )

Destructor.

Member Functions Documentation

AddDefaultsL(CMceDictionary &)

void AddDefaultsL ( CMceDictionary & aDictionary ) [private]

Adds the default items in dictionary

Parameters

CMceDictionary & aDictionary the dictionary

ConstructL()

void ConstructL ( ) [private]

Second phase constructor

ExtensionAllowMethodsL(RArray< TInt > &)

void ExtensionAllowMethodsL ( RArray < TInt > & aArray )

Put all allow headers supported by MCE into array

Parameters

RArray < TInt > & aArray contains the allow header values

Level(const CMceDictionary &, TExtension)

TLevel Level ( const CMceDictionary & aDictionary,
TExtension aExtension
) const [private]

Returns the level of extension in dictionary

Parameters

const CMceDictionary & aDictionary the dictionary
TExtension aExtension the extension

LevelL(CSIPTransactionBase &, TExtension)

TLevel LevelL ( CSIPTransactionBase & aTransaction,
TExtension aExtension
)

Returns the level of support for certain SIP extension,

Parameters

CSIPTransactionBase & aTransaction the transaction
TExtension aExtension the extension

Local(TExtension)

TLevel Local ( TExtension aExtension )

Query the level of local support for given extension. Not stored extension is considered not supported.

Parameters

TExtension aExtension the extension

LocalSipExtensionsL(RArray< TExtension > &)

void LocalSipExtensionsL ( RArray < TExtension > & aArray )

Put all Sip extension headers supported by MCE into array

Parameters

RArray < TExtension > & aArray contains the allow header values

NewL()

CMceSipExtensions * NewL ( ) [static]

Two-phased constructor.

Remote(TExtension)

TLevel Remote ( TExtension aExtension )

Query the level of remote support for given extension. Not stored extension is considered not supported.

Parameters

TExtension aExtension the extension

RemoteIMSRel5()

TBool RemoteIMSRel5 ( )

Finds out, is the remote UA IMS Rel5 terminal

SetExtensionAllowHeadersL(const CSIPMessageElements *)

void SetExtensionAllowHeadersL ( const CSIPMessageElements * aMessage ) [private]

Setting romete extesion header support status

Parameters

const CSIPMessageElements * aMessage SipMessages

SetLevel(CMceDictionary &, TExtension, TLevel)

void SetLevel ( CMceDictionary & aDictionary,
TExtension aExtension,
TLevel aLevel
) [private]

Set the level of support for given extension in dictionary. Ignored, if the extension is not stored.

Parameters

CMceDictionary & aDictionary the dictionary
TExtension aExtension the extension
TLevel aLevel the level

SetLocal(TExtension, TLevel)

void SetLocal ( TExtension aExtension,
TLevel aLevel
)

Set the level of local support for given extension. Ignored, if the extension is not stored.

Parameters

TExtension aExtension the extension
TLevel aLevel the level

SetRemote(TExtension, TLevel)

void SetRemote ( TExtension aExtension,
TLevel aLevel
)

Set the level of remote support for given extension. Ignored, if the extension is not stored.

Parameters

TExtension aExtension the extension
TLevel aLevel the level

Update(CMceComSession &)

void Update ( CMceComSession & aBody )

Updates the extensions according to client preferences Leaves with KErrNotSupported, if unsupported extensions is required.

Parameters

CMceComSession & aBody the client data

Update(TMceSessionModifier, TUint)

void Update ( TMceSessionModifier aModifier,
TUint aValue
) [private]

Update extension value specified by session modifier according to given value.

Parameters

TMceSessionModifier aModifier the session modifier
TUint aValue the value

UpdateL(CSIPServerTransaction &)

void UpdateL ( CSIPServerTransaction & aTransaction )

Updates the extensions according to incoming request. Leaves with KErrNotSupported, if unsupported extension is required.

Parameters

CSIPServerTransaction & aTransaction the transaction

UpdateL(CSIPClientTransaction &)

void UpdateL ( CSIPClientTransaction & aTransaction )

Updates the extensions according to incoming response Leaves with KErrNotSupported, if unsupported extensions is required.

Parameters

CSIPClientTransaction & aTransaction the transaction

Member Enumerations Documentation

Enum TExtension

Enumerators

E100rel = 1
EQosPreconds
ESecPreconds
EUpdate
EPrack
ESubscribe
ERefer
ENotify

Enum TLevel

Enumerators

ENotSupported
ESupported
ERequired

Member Data Documentation

CMceDictionary * iLocal

CMceDictionary * iLocal [private]

CMceDictionary * iRemote

CMceDictionary * iRemote [private]