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 & aRsStatus the TRequestStatus to complete when the job is finished
MBindManagerNotify * aBindManager the object to notify of timeout

~CJob()

~CJob ( )

Destructor for CJob

Member Functions Documentation

AddTaskL(TUint, const TCFModuleNameF &)

void AddTaskL ( TUint aTaskId,
const TCFModuleNameF & aModule
)
Add a task to this job
leave
KErrNoMemory

Parameters

TUint aTaskId the task identifier to add
const TCFModuleNameF & aModule the name of the module which owns the task

Cancel()

void Cancel ( )

Cancels the job

ConstructL()

void ConstructL ( ) [private]

Second phase constructor for CJob

Dequeue()

void Dequeue ( )

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 & aRsStatus the comparator

ModuleTimerShot()

void ModuleTimerShot ( ) [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 & iRsStatus the TRequestStatus to complete when the job is finished
MBindManagerNotify * aBindManager the object to notify of timeout

StartTimeout(TUint)

void StartTimeout ( TUint aMicroseconds )

Start the timeout for this job

Parameters

TUint aMicroseconds the length of the timeout

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

void TaskCompleted ( const TCFModuleNameF & aModuleName,
const TUint aTaskId,
const TInt aStatus
)

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 & aModuleName the name of the module that owns the completed task
const TUint aTaskId the identifier of the completed task
const TInt aStatus the 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]