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 &)

voidAddDefaultsL(CMceDictionary &aDictionary)[private]

Adds the default items in dictionary

Parameters

CMceDictionary & aDictionarythe dictionary

ConstructL()

voidConstructL()[private]

Second phase constructor

ExtensionAllowMethodsL(RArray< TInt > &)

voidExtensionAllowMethodsL(RArray< TInt > &aArray)

Put all allow headers supported by MCE into array

Parameters

RArray< TInt > & aArraycontains the allow header values

Level(const CMceDictionary &, TExtension)

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

Returns the level of extension in dictionary

Parameters

const CMceDictionary & aDictionarythe dictionary
TExtension aExtensionthe extension

LevelL(CSIPTransactionBase &, TExtension)

TLevel LevelL(CSIPTransactionBase &aTransaction,
TExtensionaExtension
)

Returns the level of support for certain SIP extension,

Parameters

CSIPTransactionBase & aTransactionthe transaction
TExtension aExtensionthe extension

Local(TExtension)

TLevel Local(TExtensionaExtension)

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

Parameters

TExtension aExtensionthe extension

LocalSipExtensionsL(RArray< TExtension > &)

voidLocalSipExtensionsL(RArray< TExtension > &aArray)

Put all Sip extension headers supported by MCE into array

Parameters

RArray< TExtension > & aArraycontains the allow header values

NewL()

CMceSipExtensions *NewL()[static]

Two-phased constructor.

Remote(TExtension)

TLevel Remote(TExtensionaExtension)

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

Parameters

TExtension aExtensionthe extension

RemoteIMSRel5()

TBool RemoteIMSRel5()

Finds out, is the remote UA IMS Rel5 terminal

SetExtensionAllowHeadersL(const CSIPMessageElements *)

voidSetExtensionAllowHeadersL(const CSIPMessageElements *aMessage)[private]

Setting romete extesion header support status

Parameters

const CSIPMessageElements * aMessageSipMessages

SetLevel(CMceDictionary &, TExtension, TLevel)

voidSetLevel(CMceDictionary &aDictionary,
TExtensionaExtension,
TLevelaLevel
)[private]

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

Parameters

CMceDictionary & aDictionarythe dictionary
TExtension aExtensionthe extension
TLevel aLevelthe level

SetLocal(TExtension, TLevel)

voidSetLocal(TExtensionaExtension,
TLevelaLevel
)

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

Parameters

TExtension aExtensionthe extension
TLevel aLevelthe level

SetRemote(TExtension, TLevel)

voidSetRemote(TExtensionaExtension,
TLevelaLevel
)

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

Parameters

TExtension aExtensionthe extension
TLevel aLevelthe level

Update(CMceComSession &)

voidUpdate(CMceComSession &aBody)

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

Parameters

CMceComSession & aBodythe client data

Update(TMceSessionModifier, TUint)

voidUpdate(TMceSessionModifieraModifier,
TUintaValue
)[private]

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

Parameters

TMceSessionModifier aModifierthe session modifier
TUint aValuethe value

UpdateL(CSIPServerTransaction &)

voidUpdateL(CSIPServerTransaction &aTransaction)

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

Parameters

CSIPServerTransaction & aTransactionthe transaction

UpdateL(CSIPClientTransaction &)

voidUpdateL(CSIPClientTransaction &aTransaction)

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

Parameters

CSIPClientTransaction & aTransactionthe 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]