CSUPLProtocolManagerBase Class Reference

class CSUPLProtocolManagerBase : public CBase

Class: CSUPLProtocolManagerBase

Description: Custom ECOM interface definition. This interface is used by clients to find specific instance and implementation of protocol handler Plugin.

Inherits from

  • CSUPLProtocolManagerBase
Public Member Functions
CSUPLProtocolManagerBase()
~CSUPLProtocolManagerBase()
voidCancelDeInitialize()
voidCancelInitialize()
voidCancelRunSession(CSuplSessionBase *)
voidCancelSuplTriggerSession(CSuplSessionBase *)
IMPORT_C voidConstructL(const TUid &)
CSuplSessionBase *CreateNewSessionL(TSuplReqType, TInt, RSuplTerminalSubSession::TSuplServiceType)
voidDeInitialize(TRequestStatus &)
TInt DestroySession(CSuplSessionBase *)
TInt GetSUPLMessageVersionL(TInt &, const TDesC8 &)
voidHandlePacket(const TDesC8 &, TUint)
voidHandlePacketError(TInt)
voidHandleSuplMessageL(CSuplSessionBase *const , TRequestStatus &, HBufC8 *)
IMPORT_C TUidImplementationUid()
voidInitializeL(CSuplCommunicationManager *, TRequestStatus &)
IMPORT_C CSUPLProtocolManagerBase *NewL(const TDesC8 &)
IMPORT_C CSUPLProtocolManagerBase *NewL(const TUid &)
voidNotifyTriggerFiredL(CSuplSessionBase *const , TRequestStatus &, TSuplTriggerFireInfo &)
voidRunSessionL(CSuplSessionBase *const , TRequestStatus &, const TDesC &, TBool, TBool, TInt, TInt)
voidRunSessionL(CSuplSessionBase *const , TRequestStatus &, const TDesC &, TBool, TBool, TInt, TSuplTerminalQop &, TInt)
voidRunSuplTriggerSessionL(CSuplSessionBase *const , TRequestStatus &, TSuplTerminalPeriodicTrigger &, const TDesC &, TBool, TInt, TInt)
IMPORT_C TIntVersion()
Private Member Functions
CSUPLProtocolManagerBase(const CSUPLProtocolManagerBase &)
TInt GetVersionL()
CSUPLProtocolManagerBase &operator=(const CSUPLProtocolManagerBase &)
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
enumTSuplReqType { ETerminal = 0, ENetwork }
Private Attributes
TUid iDtor_ID_Key
TUid iImplementationUid

Constructor & Destructor Documentation

CSUPLProtocolManagerBase()

IMPORT_CCSUPLProtocolManagerBase()

Function: CSUPLProtocolManagerBase

: Default constructor

: None

: None

CSUPLProtocolManagerBase(const CSUPLProtocolManagerBase &)

CSUPLProtocolManagerBase(const CSUPLProtocolManagerBase &)[private]

By default, prohibit copy constructor

Parameters

const CSUPLProtocolManagerBase &

~CSUPLProtocolManagerBase()

IMPORT_C~CSUPLProtocolManagerBase()

Function: ~CSUPLProtocolManagerBase

: Wraps ECom object destruction. Notifies the ECOM framework that specific instance is being destroyed.

Member Functions Documentation

CancelDeInitialize()

voidCancelDeInitialize()[pure virtual]

Function: CancelDeInitialize,

: Does the cancellation of asynchronous de-initilization.

: None

: None

CancelInitialize()

voidCancelInitialize()[pure virtual]

Function: CancelInitialize,

: Does the cancellation of asynchronous initilization.

: None

: None

CancelRunSession(CSuplSessionBase *)

voidCancelRunSession(CSuplSessionBase *aSuplSession)[pure virtual]

Function: CancelRunSession

: Cancels the Run Session Request

: Session Object

: None

Parameters

CSuplSessionBase * aSuplSession

CancelSuplTriggerSession(CSuplSessionBase *)

voidCancelSuplTriggerSession(CSuplSessionBase *aSuplSession)[pure virtual]

Function: CancelSuplTriggerSession

: Cancels an in-progress Terminal Initiated Periodic Trigger Session Location Request

: Session Object

: None

Parameters

CSuplSessionBase * aSuplSession

ConstructL(const TUid &)

IMPORT_C voidConstructL(const TUid &aUid)[virtual]

Function: SetImplementationUid

: Sets Uid of implementation

: UID of implementation.

: None

Parameters

const TUid & aUid

CreateNewSessionL(TSuplReqType, TInt, RSuplTerminalSubSession::TSuplServiceType)

CSuplSessionBase *CreateNewSessionL(TSuplReqTypeaRequestType,
TIntaIpcSessionId,
RSuplTerminalSubSession::TSuplServiceTypeaSuplService
)[pure virtual]

Function: CreateNewSession

: Creates new SuplSession instance

: None

: Instance of CSuplSessionBase.

Parameters

TSuplReqType aRequestType
TInt aIpcSessionId
RSuplTerminalSubSession::TSuplServiceType aSuplService

DeInitialize(TRequestStatus &)

voidDeInitialize(TRequestStatus &aDeInitRequestStatus)[pure virtual]

Function: DeInitialize,

: Does the de-initilization.

: aDeInitRequestStatus,for asynchronous de-initilization of protocol manager

: None

Parameters

TRequestStatus & aDeInitRequestStatus

DestroySession(CSuplSessionBase *)

TInt DestroySession(CSuplSessionBase *aSuplSession)[pure virtual]

Function: DestroySession

: Destoys SuplSession instance

: None

: TInt, if session is invalid, then returns KErrArgument

Parameters

CSuplSessionBase * aSuplSession

GetSUPLMessageVersionL(TInt &, const TDesC8 &)

TInt GetSUPLMessageVersionL(TInt &aMajorVersion,
const TDesC8 &aReceivedMessage
)[virtual]

Function: GetSUPLMessageVersionL

: Cancels listening for the trigger fired event

: aMajorVersion,return parameter which will hold version after decoding of message.

: aReceivedMessage,message to be used to get version number.

: returns KErrNone if recceived message gets decoded successfuly otherwise KErrGeneral.

Parameters

TInt & aMajorVersion
const TDesC8 & aReceivedMessage

GetVersionL()

TInt GetVersionL()const [private]

Function: GetVersionL

: Gives version of implementation

: None

: TInt , containing version of implementation

HandlePacket(const TDesC8 &, TUint)

voidHandlePacket(const TDesC8 &aPacket,
TUintaPortNum
)[pure virtual]

Function: HandleSuplPackets

: Process Supl message which are comming from SLP

: aPacket, message packet

: None

Parameters

const TDesC8 & aPacket
TUint aPortNum

HandlePacketError(TInt)

voidHandlePacketError(TIntaError)[pure virtual]

Function: HandlePacketError

: Handles error if any while reading from communication manager

: aError, error code occured while reading from communication manager

: None

Parameters

TInt aError

HandleSuplMessageL(CSuplSessionBase *const, TRequestStatus &, HBufC8 *)

voidHandleSuplMessageL(CSuplSessionBase *const aSuplSession,
TRequestStatus &aStatus,
HBufC8 *aMessage
)[pure virtual]

Function: HandleSuplMessageL,

: Handles packet which come from SLP in NET initiated case

: aSuplSession , session object on which processing will start : aStatus, On return, the status of the request

: None

Parameters

CSuplSessionBase *const aSuplSession
TRequestStatus & aStatus
HBufC8 * aMessage

ImplementationUid()

IMPORT_C TUidImplementationUid()const

Function: ImplementationUid,

: Gives implementation UID

: None.

InitializeL(CSuplCommunicationManager *, TRequestStatus &)

voidInitializeL(CSuplCommunicationManager *aCommManager,
TRequestStatus &aInitilizationRequestStatus
)[pure virtual]

Function: InitializeL,

: Does the asynchonous initilization.

: aCommManager,Communication Manager : aInitilizationRequestStatus,for asynchronous initilization of protocol manager

: None

Parameters

CSuplCommunicationManager * aCommManager
TRequestStatus & aInitilizationRequestStatus

NewL(const TDesC8 &)

IMPORT_C CSUPLProtocolManagerBase *NewL(const TDesC8 &aOperationName)[static]

Function: NewL, Two Phase Construction

: Wraps ECom object instantitation. Will search for interface implementation, which matches to given aOperationName.

: aOperationName, name of requested implementation.

Parameters

const TDesC8 & aOperationName

NewL(const TUid &)

IMPORT_C CSUPLProtocolManagerBase *NewL(const TUid &aImplementationUid)[static]

Function: NewL, Two Phase Construction

: Wraps ECom object instantitation. Will search for interface implementation, which matches to given UID.

: aImplementationUid, UID of requested implementation.

Parameters

const TUid & aImplementationUid

NotifyTriggerFiredL(CSuplSessionBase *const, TRequestStatus &, TSuplTriggerFireInfo &)

voidNotifyTriggerFiredL(CSuplSessionBase *const aSuplSession,
TRequestStatus &aStatus,
TSuplTriggerFireInfo &aFireInfo
)[pure virtual]

Function: NotifyTriggerFired

: Starts listening for the trigger fired event

: None

: None

Parameters

CSuplSessionBase *const aSuplSession
TRequestStatus & aStatus
TSuplTriggerFireInfo & aFireInfo

RunSessionL(CSuplSessionBase *const, TRequestStatus &, const TDesC &, TBool, TBool, TInt, TInt)

voidRunSessionL(CSuplSessionBase *const aSuplSession,
TRequestStatus &aStatus,
const TDesC &aHslpAddress,
TBoolaFallBack,
TBoolaFirstReq,
TIntaAllowedCapabilities,
TIntaRequestID = 0
)[pure virtual]

Function: RunSessionL,

: Starts processing on session

: aSuplSession , session object on which processing will start : aStatus, On return, the status of the request : aAllowedCapabilities , Allowed capabilities of SET : aRequestID , Request ID of Session

: None

Parameters

CSuplSessionBase *const aSuplSession
TRequestStatus & aStatus
const TDesC & aHslpAddress
TBool aFallBack
TBool aFirstReq
TInt aAllowedCapabilities
TInt aRequestID = 0

RunSessionL(CSuplSessionBase *const, TRequestStatus &, const TDesC &, TBool, TBool, TInt, TSuplTerminalQop &, TInt)

voidRunSessionL(CSuplSessionBase *const aSuplSession,
TRequestStatus &aStatus,
const TDesC &aHslpAddress,
TBoolaFallBack,
TBoolaFirstReq,
TIntaAllowedCapabilities,
TSuplTerminalQop &aQop,
TIntaRequestID = 0
)[pure virtual]

Function: RunSessionL,

: Starts processing on session

: aSuplSession , session object on which processing will start : aStatus, On return, the status of the request : aAllowedCapabilities , Allowed capabilities of SET : aQop , specifies the quality of position : aRequestID , Request ID of Session

: None

Parameters

CSuplSessionBase *const aSuplSession
TRequestStatus & aStatus
const TDesC & aHslpAddress
TBool aFallBack
TBool aFirstReq
TInt aAllowedCapabilities
TSuplTerminalQop & aQop
TInt aRequestID = 0

RunSuplTriggerSessionL(CSuplSessionBase *const, TRequestStatus &, TSuplTerminalPeriodicTrigger &, const TDesC &, TBool, TInt, TInt)

voidRunSuplTriggerSessionL(CSuplSessionBase *const aSuplSession,
TRequestStatus &aStatus,
TSuplTerminalPeriodicTrigger &aPTrigger,
const TDesC &aHslpAddress,
TBoolaFallBack,
TIntaAllowedCapabilities,
TIntaRequestID = 0
)[pure virtual]

Function: RunSuplTriggerSessionL,

: Starts processing on session

: aSuplSession, session object on which processing will start : aStatus, On return, the status of the request : aPTrigger, specifies the periodic trigger session : aHslpAddress, specifies HSLP Server Address to be used to get position from it : aFallBack, enables/diables Multiple-SLP Fallback mechanism : aAllowedCapabilities, Allowed capabilities of SET : aRequestID, Request ID of Session

: None

Parameters

CSuplSessionBase *const aSuplSession
TRequestStatus & aStatus
TSuplTerminalPeriodicTrigger & aPTrigger
const TDesC & aHslpAddress
TBool aFallBack
TInt aAllowedCapabilities
TInt aRequestID = 0

Version()

IMPORT_C TIntVersion()const

Function: Version

: Gives version of implementation

: None.

operator=(const CSUPLProtocolManagerBase &)

CSUPLProtocolManagerBase &operator=(const CSUPLProtocolManagerBase &)[private]

By default, Prohibit assigment operator

Parameters

const CSUPLProtocolManagerBase &

Member Enumerations Documentation

Enum TSuplReqType

For diffentiating request between Terminal & NET initiation

Enumerators

ETerminal = 0
ENetwork

Member Data Documentation

TUid iDtor_ID_Key

TUid iDtor_ID_Key[private]

Function: SetImplementationUid

: Sets Uid of implementation

: UID of implementation.

: None iDtor_ID_Key Instance identifier key. When instance of an implementation is created by ECOM framework, the framework will assign UID for it. The UID is used in destructor to notify framework that this instance is being destroyed and resources can be released.

TUid iImplementationUid

TUid iImplementationUid[private]

Uid of Implementation