Skip to main content
Skip to main content

AbstractBatchJobStrategy

Implements

Constructors

constructor

Protected new AbstractBatchJobStrategy(__container__, __configModule__?, __moduleDeclaration__?)

Parameters

__container__anyRequired
__configModule__Record<string, unknown>
__moduleDeclaration__Record<string, unknown>

Properties

__configModule__Record<string, unknown>
__container__anyRequired
__moduleDeclaration__Record<string, unknown>
batchJobService_BatchJobServiceRequired
manager_EntityManagerRequired
transactionManager_undefined | EntityManagerRequired
batchTypestringRequired
identifierstringRequired

Accessors

activeManager_

Protected get activeManager_(): EntityManager

Returns

EntityManager

EntityManagerEntityManagerRequired

Methods

atomicPhase_

Protected atomicPhase_<TResult, TError>(work, isolationOrErrorHandler?, maybeErrorHandlerOrDontFail?): Promise<TResult>

Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.

TResultobjectRequired
TErrorobjectRequired

Parameters

work(transactionManager: EntityManager) => Promise<TResult>Required
the transactional work to be done
isolationOrErrorHandlerIsolationLevel | (error: TError) => Promise<void | TResult>
the isolation level to be used for the work.
maybeErrorHandlerOrDontFail(error: TError) => Promise<void | TResult>
Potential error handler

Returns

Promise<TResult>

PromisePromise<TResult>Required
the result of the transactional work

buildTemplate

Abstract buildTemplate(): Promise<string>

Builds and returns a template file that can be downloaded and filled in

Returns

Promise<string>

PromisePromise<string>Required

handleProcessingError

Protected handleProcessingError<T>(batchJobId, err, result): Promise<void>

TobjectRequired

Parameters

batchJobIdstringRequired
errunknownRequired
resultTRequired

Returns

Promise<void>

PromisePromise<void>Required

preProcessBatchJob

preProcessBatchJob(batchJobId): Promise<void>

Method for pre-processing a batch job

Parameters

batchJobIdstringRequired

Returns

Promise<void>

PromisePromise<void>Required

prepareBatchJobForProcessing

prepareBatchJobForProcessing(batchJob, req): Promise<CreateBatchJobInput>

Method for preparing a batch job for processing

Parameters

batchJobCreateBatchJobInputRequired
reqRequestRequired

Returns

Promise<CreateBatchJobInput>

PromisePromise<CreateBatchJobInput>Required

processJob

Abstract processJob(batchJobId): Promise<void>

Method does the actual processing of the job. Should report back on the progress of the operation.

Parameters

batchJobIdstringRequired

Returns

Promise<void>

PromisePromise<void>Required

shouldRetryOnProcessingError

Protected shouldRetryOnProcessingError(batchJob, err): Promise<boolean>

Parameters

batchJobBatchJobRequired
A Batch Job indicates an asynchronus task stored in the Medusa backend. Its status determines whether it has been executed or not.
errunknownRequired

Returns

Promise<boolean>

PromisePromise<boolean>Required

shouldRetryTransaction_

Protected shouldRetryTransaction_(err): boolean

Parameters

errRecord<string, unknown> | { code: string }Required

Returns

boolean

booleanboolean

withTransaction

withTransaction(transactionManager?): AbstractBatchJobStrategy

Parameters

transactionManagerEntityManager

Returns

AbstractBatchJobStrategy

AbstractBatchJobStrategyAbstractBatchJobStrategyRequired
Was this section helpful?