CJob Class Reference

class CJob : public CBase

Manages an asynchronous call from the rootserver into bindmanager, including monitoring a list of individual tasks associated with the job, and dealing with a timeout if a task fails to complete

Inherits from

Nested Classes and Structures

Constructor & Destructor Documentation

CJob(TRequestStatus &, MBindManagerNotify *)

CJob(TRequestStatus &aRsStatus,
MBindManagerNotify *aBindManager
)[private]

Constructor for CJob

Parameters

TRequestStatus & aRsStatusthe TRequestStatus to complete when the job is finished
MBindManagerNotify * aBindManagerthe object to notify of timeout

~CJob()

~CJob()

Destructor for CJob

Member Functions Documentation

AddTaskL(TUint, const TCFModuleNameF &)

voidAddTaskL(TUintaTaskId,
const TCFModuleNameF &aModule
)
Add a task to this job
leave
KErrNoMemory

Parameters

TUint aTaskIdthe task identifier to add
const TCFModuleNameF & aModulethe name of the module which owns the task

Cancel()

voidCancel()

Cancels the job

ConstructL()

voidConstructL()[private]

Second phase constructor for CJob

Dequeue()

voidDequeue()

Remove this from the linked list

HasStatus(const TRequestStatus &)

TBool HasStatus(const TRequestStatus &aRsStatus)const

Indicates whether this job will complete the supplied status request when the job completes

Parameters

const TRequestStatus & aRsStatusthe comparator

ModuleTimerShot()

voidModuleTimerShot()[virtual]

Virtual method called by timeout member

NewL(TRequestStatus &, MBindManagerNotify *)

CJob *NewL(TRequestStatus &iRsStatus,
MBindManagerNotify *aBindManager
)[static]
Creates new CJob object
leave
KErrNoMemory

Parameters

TRequestStatus & iRsStatusthe TRequestStatus to complete when the job is finished
MBindManagerNotify * aBindManagerthe object to notify of timeout

StartTimeout(TUint)

voidStartTimeout(TUintaMicroseconds)

Start the timeout for this job

Parameters

TUint aMicrosecondsthe length of the timeout

TaskCompleted(const TCFModuleNameF &, const TUint, const TInt)

voidTaskCompleted(const TCFModuleNameF &aModuleName,
const TUintaTaskId,
const TIntaStatus
)

Method called by bindmanager when a task is completed. If all of the tasks on a job complete then the client's request will be completed and the job deleted

Parameters

const TCFModuleNameF & aModuleNamethe name of the module that owns the completed task
const TUint aTaskIdthe identifier of the completed task
const TInt aStatusthe completion code for the task

Member Data Documentation

MBindManagerNotify * iBindManager

MBindManagerNotify *iBindManager[private]

TBool iCancelled

TBool iCancelled[private]

TInt iCompletionCode

TInt iCompletionCode[private]

TDblQueLink iLink

TDblQueLink iLink

TRequestStatus & iRsStatus

TRequestStatus &iRsStatus[private]

RArray< TTaskData > iTaskDataList

RArray< TTaskData >iTaskDataList[private]

CJobTimeout * iTimeout

CJobTimeout *iTimeout[private]