RNSmlDMDataSession Class Reference

class RNSmlDMDataSession : public RSessionBase

DM host client implementation

Since

Inherits from

Public Member Functions
RNSmlDMDataSession ()
~RNSmlDMDataSession ()
void AddNodeL (const TUint32 , const TDesC8 &, const TInt32 , const TDesC8 &)
void ChildURIListL (const TUint32 , const TDesC8 &, const TDesC8 &, const CArrayFixFlat < TSmlDmMappingInfo > &, const TInt , const TInt )
void Close ()
void CommitAtomicL ()
void CompleteOutstandingCmdsL ()
TInt ConnectL (const TDesC &, CNSmlDmDDF *)
void CopyCommandL (const TUint32 , const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TInt32 , const TDesC8 &)
TInt DDFStructureL ( CNSmlDmMgmtTree &)
void DeleteObjectL (const TUint32 , const TDesC8 &, const TInt32 , const TDesC8 &)
void ExecuteCommandL (const TUint32 , const TDesC8 &, const TInt32 , const TDesC8 &, const TDesC8 &, const TDesC8 &, const TBool )
void FetchLeafObjectL (const TUint32 , const TDesC8 &, const TDesC8 &, const TDesC8 &, const TInt , const TInt )
void FetchLeafObjectSizeL (const TUint32 , const TDesC8 &, const TDesC8 &, const TDesC8 &, const TInt , const TInt )
void MarkGenAlertsSent ()
void MarkGenAlertsSent (const TDesC8 &)
void MoreDataL ( CBufBase *&)
void RollbackAtomicL ()
void StartAtomicL ()
void UpdateLeafL (const TUint32 , const TDesC8 &, const TInt32 , const TDesC8 &, const TDesC8 &, const TDesC8 &, const TBool , const TInt )
TVersion Version ()
Private Member Functions
void HandleCallbacksL ( TNSmlDmHostCallbackType )
TInt LaunchServerL (const TDesC &)
TInt SendChunkHandle ()
Inherited Functions
RHandleBase::Attributes()const
RHandleBase::BTraceId()const
RHandleBase::DoExtendedClose()
RHandleBase::Duplicate(const RThread &,TOwnerType)
RHandleBase::FullName()const
RHandleBase::FullName(TDes &)const
RHandleBase::Handle()const
RHandleBase::HandleInfo(THandleInfo *)
RHandleBase::Name()const
RHandleBase::NotifyDestruction(TRequestStatus &)
RHandleBase::Open(const TFindHandleBase &,TOwnerType)
RHandleBase::OpenByName(const TDesC &,TOwnerType,TInt)
RHandleBase::RHandleBase()
RHandleBase::RHandleBase(TInt)
RHandleBase::SetHandle(TInt)
RHandleBase::SetHandleNC(TInt)
RSessionBase::CreateSession(RServer2,const TVersion &)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TRequestStatus *)
RSessionBase::Open(RMessagePtr2,TInt,TOwnerType)
RSessionBase::Open(RMessagePtr2,TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Open(TInt,TOwnerType)
RSessionBase::Open(TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Send(TInt)const
RSessionBase::Send(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt)const
RSessionBase::SendReceive(TInt,TRequestStatus &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &,TRequestStatus &)const
RSessionBase::SetReturnedHandle(TInt)
RSessionBase::SetReturnedHandle(TInt,RHandleBase &)
RSessionBase::SetReturnedHandle(TInt,const TSecurityPolicy &)
RSessionBase::ShareAuto()
RSessionBase::ShareProtected()
Inherited Enumerations
RHandleBase:TAttributes
RSessionBase:TAttachMode
Private Attributes
CNSmlDmDDF * iCallback
RChunk iChunk
HBufC8 * iLargeObjectUri
CArrayPtrSeg < HBufC8 > * iMapLuids
CArrayPtrSeg < HBufC8 > * iMapUris
TUint8 iServerId
Inherited Attributes
RHandleBase::iHandle

Constructor & Destructor Documentation

RNSmlDMDataSession()

RNSmlDMDataSession ( )

Constructor

~RNSmlDMDataSession()

~RNSmlDMDataSession ( )

Destructor

Member Functions Documentation

AddNodeL(const TUint32, const TDesC8 &, const TInt32, const TDesC8 &)

void AddNodeL ( const TUint32 aAdapterId,
const TDesC8 & aLuid,
const TInt32 aStatusRef,
const TDesC8 & aURI
)

Add node object in given adapter

Parameters

const TUint32 aAdapterId Adapter id
const TDesC8 & aLuid Luid mapped to uri
const TInt32 aStatusRef Reference to status element
const TDesC8 & aURI Target URI in command

ChildURIListL(const TUint32, const TDesC8 &, const TDesC8 &, const CArrayFixFlat< TSmlDmMappingInfo > &, const TInt, const TInt)

void ChildURIListL ( const TUint32 aAdapterId,
const TDesC8 & aURI,
const TDesC8 & aLUID,
const CArrayFixFlat < TSmlDmMappingInfo > & aPreviousURISegmentList,
const TInt aResultsRef,
const TInt aStatusRef
)

Get child list from given adapter

Parameters

const TUint32 aAdapterId Adapter id
const TDesC8 & aURI Target URI in command
const TDesC8 & aLUID Luid mapped to uri
const CArrayFixFlat < TSmlDmMappingInfo > & aPreviousURISegmentList Previous list from tree db
const TInt aResultsRef
const TInt aStatusRef Reference to status element

Close()

void Close ( )

Closes the session

CommitAtomicL()

void CommitAtomicL ( )

Indicates host server about the atomic commit

CompleteOutstandingCmdsL()

void CompleteOutstandingCmdsL ( )

Indicates host server about the message ending

ConnectL(const TDesC &, CNSmlDmDDF *)

TInt ConnectL ( const TDesC & aServerName,
CNSmlDmDDF * aDmCallback
)

Connects to correct host server. If Host server is not launhed, the function launches it

Parameters

const TDesC & aServerName Server name
CNSmlDmDDF * aDmCallback Pointer to DDF class

CopyCommandL(const TUint32, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TInt32, const TDesC8 &)

void CopyCommandL ( const TUint32 aAdapterId,
const TDesC8 & aTargetLuid,
const TDesC8 & aTargetURI,
const TDesC8 & aSourceLuid,
const TDesC8 & aSourceURI,
const TInt32 aStatusRef,
const TDesC8 & aType
)

Copy data in given adapter

Parameters

const TUint32 aAdapterId Adapter id
const TDesC8 & aTargetLuid Luid mapped to uri
const TDesC8 & aTargetURI Target URI in command
const TDesC8 & aSourceLuid Source luid mapped to uri
const TDesC8 & aSourceURI Source URI in command
const TInt32 aStatusRef Reference to status element
const TDesC8 & aType Mime type of the object

DDFStructureL(CNSmlDmMgmtTree &)

TInt DDFStructureL ( CNSmlDmMgmtTree & aRoot )

Gets the DDF structure from plugin adapters of corresponding host server

Parameters

CNSmlDmMgmtTree & aRoot Reference to root node of tree

DeleteObjectL(const TUint32, const TDesC8 &, const TInt32, const TDesC8 &)

void DeleteObjectL ( const TUint32 aAdapterId,
const TDesC8 & aLuid,
const TInt32 aStatusRef,
const TDesC8 & aURI
)

Delete object in given adapter

Parameters

const TUint32 aAdapterId Adapter id
const TDesC8 & aLuid Luid mapped to uri
const TInt32 aStatusRef Reference to status element
const TDesC8 & aURI Target URI in command

ExecuteCommandL(const TUint32, const TDesC8 &, const TInt32, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TBool)

void ExecuteCommandL ( const TUint32 aAdapterId,
const TDesC8 & aLuid,
const TInt32 aStatusRef,
const TDesC8 & aURI,
const TDesC8 & aObject,
const TDesC8 & aType,
const TBool aLargeItem = EFalse
)

Execute command in given adapter

Parameters

const TUint32 aAdapterId Adapter id
const TDesC8 & aLuid Luid mapped to uri
const TInt32 aStatusRef Reference to status element
const TDesC8 & aURI Target URI in command
const TDesC8 & aObject Data
const TDesC8 & aType Mime type of the object
const TBool aLargeItem = EFalse True if object comes in multiple messages

FetchLeafObjectL(const TUint32, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TInt, const TInt)

void FetchLeafObjectL ( const TUint32 aAdapterId,
const TDesC8 & aURI,
const TDesC8 & aLUID,
const TDesC8 & aType,
const TInt aResultsRef,
const TInt aStatusRef
)

Get data from given adapter

Parameters

const TUint32 aAdapterId Adapter id
const TDesC8 & aURI Target URI in command
const TDesC8 & aLUID Luid mapped to uri
const TDesC8 & aType Mime type of the object
const TInt aResultsRef
const TInt aStatusRef Reference to status element

FetchLeafObjectSizeL(const TUint32, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TInt, const TInt)

void FetchLeafObjectSizeL ( const TUint32 aAdapterId,
const TDesC8 & aURI,
const TDesC8 & aLUID,
const TDesC8 & aType,
const TInt aResultsRef,
const TInt aStatusRef
)

Get data size from given adapter

Parameters

const TUint32 aAdapterId Adapter id
const TDesC8 & aURI Target URI in command
const TDesC8 & aLUID Luid mapped to uri
const TDesC8 & aType Mime type of the object
const TInt aResultsRef
const TInt aStatusRef Reference to status element

HandleCallbacksL(TNSmlDmHostCallbackType)

void HandleCallbacksL ( TNSmlDmHostCallbackType aCallbackType ) [private]

Handles callbacks from host server

Parameters

TNSmlDmHostCallbackType aCallbackType Callback type

LaunchServerL(const TDesC &)

TInt LaunchServerL ( const TDesC & aServerExeName ) [private]

Launches server

Parameters

const TDesC & aServerExeName Server executable name

MarkGenAlertsSent()

void MarkGenAlertsSent ( )

When the generic alerts are successfully sent to the remote server, the FOTA adapter needs to be informed about this. This command is chained through the DM engine. In this function a request is issued as an IPC call.

MarkGenAlertsSent(const TDesC8 &)

void MarkGenAlertsSent ( const TDesC8 & aURI )

Parameters

const TDesC8 & aURI

MoreDataL(CBufBase *&)

void MoreDataL ( CBufBase *& aData )

Gets more data from host server in case of large object

Parameters

CBufBase *& aData Reference to data buffer where to write data

RollbackAtomicL()

void RollbackAtomicL ( )

Indicates host server about the atomic rollback

SendChunkHandle()

TInt SendChunkHandle ( ) [private]

Sends chunck handle to host server

StartAtomicL()

void StartAtomicL ( )

Indicates host server about the atomic statrt

UpdateLeafL(const TUint32, const TDesC8 &, const TInt32, const TDesC8 &, const TDesC8 &, const TDesC8 &, const TBool, const TInt)

void UpdateLeafL ( const TUint32 aAdapterId,
const TDesC8 & aLuid,
const TInt32 aStatusRef,
const TDesC8 & aURI,
const TDesC8 & aObject,
const TDesC8 & aType,
const TBool aLargeItem = EFalse,
const TInt aTotSizeOfLarge = 0
)

Update leaf object in given adapter

Parameters

const TUint32 aAdapterId Adapter id
const TDesC8 & aLuid Luid mapped to uri
const TInt32 aStatusRef Reference to status element
const TDesC8 & aURI Target URI in command
const TDesC8 & aObject Data
const TDesC8 & aType Mime type of the object
const TBool aLargeItem = EFalse True if object comes in multiple messages
const TInt aTotSizeOfLarge = 0 The overall size of the large object. Sent with the first chunk for the FOTA adapter.

Version()

TVersion Version ( ) const

Returns server version

Member Data Documentation

CNSmlDmDDF * iCallback

CNSmlDmDDF * iCallback [private]

Pouinter to DDF class

RChunk iChunk

RChunk iChunk [private]

Handle to chunk that is used to transfer data between client and server

HBufC8 * iLargeObjectUri

HBufC8 * iLargeObjectUri [private]

Large object uri in case of incoming large object

CArrayPtrSeg< HBufC8 > * iMapLuids

CArrayPtrSeg < HBufC8 > * iMapLuids [private]

Array of Luids when host server sends mappings

CArrayPtrSeg< HBufC8 > * iMapUris

CArrayPtrSeg < HBufC8 > * iMapUris [private]

Array of URIs when host server sends mappings

TUint8 iServerId

TUint8 iServerId [private]

Id of the session, 1...4