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

Public Member Functions
CSUPLProtocolManagerBase ()
~CSUPLProtocolManagerBase ()
void CancelDeInitialize ()
void CancelInitialize ()
void CancelRunSession (CSuplSessionBase *)
void CancelSuplTriggerSession (CSuplSessionBase *)
IMPORT_C void ConstructL (const TUid &)
CSuplSessionBase * CreateNewSessionL ( TSuplReqType , TInt , RSuplTerminalSubSession::TSuplServiceType )
void DeInitialize ( TRequestStatus &)
TInt DestroySession (CSuplSessionBase *)
TInt GetSUPLMessageVersionL ( TInt &, const TDesC8 &)
void HandlePacket (const TDesC8 &, TUint )
void HandlePacketError ( TInt )
void HandleSuplMessageL (CSuplSessionBase *const , TRequestStatus &, HBufC8 *)
IMPORT_C TUid ImplementationUid ()
void InitializeL ( CSuplCommunicationManager *, TRequestStatus &)
IMPORT_C CSUPLProtocolManagerBase * NewL (const TDesC8 &)
IMPORT_C CSUPLProtocolManagerBase * NewL (const TUid &)
void NotifyTriggerFiredL (CSuplSessionBase *const , TRequestStatus &, TSuplTriggerFireInfo &)
void RunSessionL (CSuplSessionBase *const , TRequestStatus &, const TDesC &, TBool , TBool , TInt , TInt )
void RunSessionL (CSuplSessionBase *const , TRequestStatus &, const TDesC &, TBool , TBool , TInt , TSuplTerminalQop &, TInt )
void RunSuplTriggerSessionL (CSuplSessionBase *const , TRequestStatus &, TSuplTerminalPeriodicTrigger &, const TDesC &, TBool , TInt , TInt )
IMPORT_C TInt Version ()
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
enum TSuplReqType { ETerminal  = 0, ENetwork }
Private Attributes
TUid iDtor_ID_Key
TUid iImplementationUid

Constructor & Destructor Documentation

CSUPLProtocolManagerBase()

IMPORT_C CSUPLProtocolManagerBase ( )

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

void CancelDeInitialize ( ) [pure virtual]

Function: CancelDeInitialize,

: Does the cancellation of asynchronous de-initilization.

: None

: None

CancelInitialize()

void CancelInitialize ( ) [pure virtual]

Function: CancelInitialize,

: Does the cancellation of asynchronous initilization.

: None

: None

CancelRunSession(CSuplSessionBase *)

void CancelRunSession ( CSuplSessionBase * aSuplSession ) [pure virtual]

Function: CancelRunSession

: Cancels the Run Session Request

: Session Object

: None

Parameters

CSuplSessionBase * aSuplSession

CancelSuplTriggerSession(CSuplSessionBase *)

void CancelSuplTriggerSession ( 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 void ConstructL ( 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 ( TSuplReqType aRequestType,
TInt aIpcSessionId,
RSuplTerminalSubSession::TSuplServiceType aSuplService
) [pure virtual]

Function: CreateNewSession

: Creates new SuplSession instance

: None

: Instance of CSuplSessionBase.

Parameters

TSuplReqType aRequestType
TInt aIpcSessionId
RSuplTerminalSubSession::TSuplServiceType aSuplService

DeInitialize(TRequestStatus &)

void DeInitialize ( 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)

void HandlePacket ( const TDesC8 & aPacket,
TUint aPortNum
) [pure virtual]

Function: HandleSuplPackets

: Process Supl message which are comming from SLP

: aPacket, message packet

: None

Parameters

const TDesC8 & aPacket
TUint aPortNum

HandlePacketError(TInt)

void HandlePacketError ( TInt aError ) [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 *)

void HandleSuplMessageL ( 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 TUid ImplementationUid ( ) const

Function: ImplementationUid,

: Gives implementation UID

: None.

InitializeL(CSuplCommunicationManager *, TRequestStatus &)

void InitializeL ( 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 &)

void NotifyTriggerFiredL ( 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)

void RunSessionL ( CSuplSessionBase *const aSuplSession,
TRequestStatus & aStatus,
const TDesC & aHslpAddress,
TBool aFallBack,
TBool aFirstReq,
TInt aAllowedCapabilities,
TInt aRequestID = 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)

void RunSessionL ( CSuplSessionBase *const aSuplSession,
TRequestStatus & aStatus,
const TDesC & aHslpAddress,
TBool aFallBack,
TBool aFirstReq,
TInt aAllowedCapabilities,
TSuplTerminalQop & aQop,
TInt aRequestID = 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)

void RunSuplTriggerSessionL ( CSuplSessionBase *const aSuplSession,
TRequestStatus & aStatus,
TSuplTerminalPeriodicTrigger & aPTrigger,
const TDesC & aHslpAddress,
TBool aFallBack,
TInt aAllowedCapabilities,
TInt aRequestID = 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 TInt Version ( ) 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