Class: abstract
JobProcessor<JobDataType
>
jobs/src.JobProcessor
Extends
BaseJobProcessor
<JobDataType
>
Type parameters
▪ JobDataType extends VersionedJobData
Constructors
new JobProcessor(queue, logger, lockService, jobVersionService, jobExecutionService)
new JobProcessor<
JobDataType
>(queue
,logger
,lockService
,jobVersionService
,jobExecutionService
):JobProcessor
<JobDataType
>
Parameters
▪ queue: Queue
<JobDataType
, any
, string
>
▪ logger: PinoLogger
▪ lockService: RedlockService
▪ jobVersionService: AbstractJobVersionService
<JobVersion
, "id"
, "id"
| keyof BaseTrackedEntityHelper
, JobVersionRepository
<JobVersion
, "id"
, "id"
, "id"
| keyof BaseTrackedEntityHelper
>>
▪ jobExecutionService: AbstractJobExecutionService
<JobExecution
, "id"
, "id"
| keyof BaseTrackedEntityHelper
, JobExecutionRepository
<JobExecution
, "id"
, "id"
, "id"
| keyof BaseTrackedEntityHelper
>>
Returns
JobProcessor
<JobDataType
>
Overrides
Source
libs/jobs/src/lib/job/job.processor.ts:17
Properties
GET_JOBS_BATCH_SIZE
protected
GET_JOBS_BATCH_SIZE:number
=100
Inherited from
BaseJobProcessor
.GET_JOBS_BATCH_SIZE
Source
libs/jobs/src/lib/job/base-job.processor.ts:12
jobExecutionService
protected
jobExecutionService:AbstractJobExecutionService
<JobExecution
,"id"
,"id"
| keyofBaseTrackedEntityHelper
,JobExecutionRepository
<JobExecution
,"id"
,"id"
,"id"
| keyofBaseTrackedEntityHelper
>>
Source
libs/jobs/src/lib/job/job.processor.ts:22
jobVersionService
protected
jobVersionService:AbstractJobVersionService
<JobVersion
,"id"
,"id"
| keyofBaseTrackedEntityHelper
,JobVersionRepository
<JobVersion
,"id"
,"id"
,"id"
| keyofBaseTrackedEntityHelper
>>
Source
libs/jobs/src/lib/job/job.processor.ts:21
lockDuration
protected
lockDuration:number
=20_000
Lock is needed for a case when we don't want to run few jobs in the same time, and to avoid race conditions we need to lock a job, to retrieve all available jobs now from redis, because redis and only redis is a real source of truth for currently executing jobs
Inherited from
Source
libs/jobs/src/lib/job/base-job.processor.ts:24
lockEnd
protected
lockEnd:string
='base-job-lock-env'
Inherited from
Source
libs/jobs/src/lib/job/base-job.processor.ts:16
lockPrefix
protected
lockPrefix:string
='base-job-lock-prefix'
Inherited from
Source
libs/jobs/src/lib/job/base-job.processor.ts:15
lockService
protected
readonly
lockService:RedlockService
Inherited from
Source
libs/jobs/src/lib/job/base-job.processor.ts:114
logger
protected
readonly
logger:PinoLogger
Inherited from
Source
libs/jobs/src/lib/job/base-job.processor.ts:113
minimalSupportedVersion
protected
minimalSupportedVersion:number
=0
Inherited from
BaseJobProcessor
.minimalSupportedVersion
Source
libs/jobs/src/lib/job/base-job.processor.ts:13
queue
protected
queue:Queue
<JobDataType
,any
,string
>
Inherited from
Source
libs/jobs/src/lib/job/base-job.processor.ts:112
singleRunningJobGlobally
protected
singleRunningJobGlobally:boolean
=false
Inherited from
BaseJobProcessor
.singleRunningJobGlobally
Source
libs/jobs/src/lib/job/base-job.processor.ts:14
Accessors
worker
get
worker():T
Returns
T
Source
node_modules/@nestjs/bullmq/dist/hosts/worker-host.class.d.ts:5
Methods
assignLoggerContextVariables
protected
assignLoggerContextVariables(job
,token
):void
Parameters
▪ job: Job
<JobDataType
, any
, string
>
▪ token: string
Returns
void
Inherited from
BaseJobProcessor
.assignLoggerContextVariables
Source
libs/jobs/src/lib/job/base-job.processor.ts:119
baseTrackJobData
protected
baseTrackJobData(jobVersion
,token
?):Partial
<BaseJobExecution
>
Parameters
▪ jobVersion: BaseJobVersion
▪ token?: string
Returns
Partial
<BaseJobExecution
>
Source
libs/jobs/src/lib/job/job.processor.ts:84
getJobId
protected
getJobId(job
):string
Parameters
▪ job: Job
<JobDataType
, any
, string
>
Returns
string
Inherited from
Source
libs/jobs/src/lib/job/base-job.processor.ts:140
hasJobRunning
protected
hasJobRunning(job
):Promise
<boolean
>
This function acquiring a lock for a finding current running jobs to avoid race conditions
Parameters
▪ job: Job
<JobDataType
, any
, string
>
Returns
Promise
<boolean
>
Inherited from
BaseJobProcessor
.hasJobRunning
Source
libs/jobs/src/lib/job/base-job.processor.ts:157
hasOtherActiveJobsById
protected
hasOtherActiveJobsById(job
,onNextIteration
):Promise
<boolean
>
Parameters
▪ job: Job
<JobDataType
, any
, string
>
▪ onNextIteration: (activeJobsCount
) => Promise
<void
>
Returns
Promise
<boolean
>
Inherited from
BaseJobProcessor
.hasOtherActiveJobsById
Source
libs/jobs/src/lib/job/base-job.processor.ts:179
onApplicationBootstrap
onApplicationBootstrap():
void
Returns
void
Inherited from
BaseJobProcessor
.onApplicationBootstrap
Source
libs/jobs/src/lib/job/base-job.processor.ts:26
onApplicationShutdown
onApplicationShutdown(
signal
?):Promise
<void
>
Parameters
▪ signal?: string
Returns
Promise
<void
>
Inherited from
BaseJobProcessor
.onApplicationShutdown
Source
node_modules/@nestjs/bullmq/dist/hosts/worker-host.class.d.ts:7
process
process(
job
,token
?):Promise
<unknown
>
Parameters
▪ job: Job
<JobDataType
, any
, string
>
▪ token?: string
Returns
Promise
<unknown
>
Overrides
Source
libs/jobs/src/lib/job/job.processor.ts:34
retrieveActiveJobs
protected
retrieveActiveJobs(pageNumber
):Promise
<Job
<JobDataType
,any
,string
>[]>
Parameters
▪ pageNumber: number
Returns
Promise
<Job
<JobDataType
, any
, string
>[]>
Inherited from
BaseJobProcessor
.retrieveActiveJobs
Source
libs/jobs/src/lib/job/base-job.processor.ts:218
abstract
run
protected
abstract
run(job
,jobVersion
,token
?):Promise
<unknown
>
Parameters
▪ job: Job
<JobDataType
, any
, string
>
▪ jobVersion: BaseJobVersion
▪ token?: string
Returns
Promise
<unknown
>
Source
libs/jobs/src/lib/job/job.processor.ts:27
trackJobCompleted
protected
trackJobCompleted<T
>(jobVersion
,token
?,jobResult
?):Promise
<void
>
Type parameters
▪ T
Parameters
▪ jobVersion: BaseJobVersion
▪ token?: string
▪ jobResult?: T
Returns
Promise
<void
>
Source
libs/jobs/src/lib/job/job.processor.ts:114
trackJobFailed
protected
trackJobFailed(jobVersion
,err
,token
?):Promise
<void
>
Parameters
▪ jobVersion: BaseJobVersion
▪ err: unknown
▪ token?: string
Returns
Promise
<void
>
Source
libs/jobs/src/lib/job/job.processor.ts:127
trackJobProgress
protected
trackJobProgress(jobVersion
,progress
,token
?):Promise
<void
>
Parameters
▪ jobVersion: BaseJobVersion
▪ progress: number
▪ token?: string
Returns
Promise
<void
>
Source
libs/jobs/src/lib/job/job.processor.ts:102
trackJobSkipped
protected
trackJobSkipped(jobVersion
,token
?):Promise
<void
>
Parameters
▪ jobVersion: BaseJobVersion
▪ token?: string
Returns
Promise
<void
>
Source
libs/jobs/src/lib/job/job.processor.ts:144
trackJobStart
protected
trackJobStart(jobVersion
,token
?):Promise
<void
>
Parameters
▪ jobVersion: BaseJobVersion
▪ token?: string
Returns
Promise
<void
>
Source
libs/jobs/src/lib/job/job.processor.ts:94
verifyJobVersionMatch
protected
verifyJobVersionMatch(job
):void
Parameters
▪ job: Job
<JobDataType
, any
, string
>
Returns
void
Inherited from
BaseJobProcessor
.verifyJobVersionMatch
Source
libs/jobs/src/lib/job/base-job.processor.ts:132
Generated using typedoc-plugin-markdown and TypeDoc