--- displayed_sidebar: servicesSidebar --- import ParameterTypes from "@site/src/components/ParameterTypes" # AbstractBatchJobStrategy ## Implements - [IBatchJobStrategy](../interfaces/IBatchJobStrategy.mdx) ## Constructors #### constructor `Protected **new AbstractBatchJobStrategy**(__container__, __configModule__?, __moduleDeclaration__?)` ##### Parameters `", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "__moduleDeclaration__", "type": "`Record`", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] } ]} /> ## Properties `", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "__container__", "type": "`any`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "__moduleDeclaration__", "type": "`Record`", "description": "", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "batchJobService_", "type": "[BatchJobService](BatchJobService.mdx)", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "manager_", "type": "EntityManager", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "transactionManager_", "type": "`undefined` \\| EntityManager", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "batchType", "type": "`string`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "identifier", "type": "`string`", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> ## Accessors #### activeManager\_ `Protected` **activeManager\_**: [object Object] ## Methods #### atomicPhase\_ `Protected **atomicPhase_**(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. ##### Type Parameters ##### Parameters Promise<TResult>", "description": "the transactional work to be done", "optional": false, "defaultValue": "", "expandable": false, "children": [] }, { "name": "isolationOrErrorHandler", "type": "`IsolationLevel` \\| (`error`: `TError`) => Promise<void \\| TResult>", "description": "the isolation level to be used for the work.", "optional": true, "defaultValue": "", "expandable": false, "children": [] }, { "name": "maybeErrorHandlerOrDontFail", "type": "(`error`: `TError`) => Promise<void \\| TResult>", "description": "Potential error handler", "optional": true, "defaultValue": "", "expandable": false, "children": [] } ]} /> ##### Returns Promise<TResult> ___ #### buildTemplate `Abstract **buildTemplate**(): Promise<string>` Builds and returns a template file that can be downloaded and filled in ##### Returns Promise<string> ___ #### handleProcessingError `Protected **handleProcessingError**(batchJobId, err, result): Promise<void>` ##### Type Parameters ##### Parameters ##### Returns Promise<void> ___ #### preProcessBatchJob `**preProcessBatchJob**(batchJobId): Promise<void>` Method for pre-processing a batch job ##### Parameters ##### Returns Promise<void> ___ #### prepareBatchJobForProcessing `**prepareBatchJobForProcessing**(batchJob, req): Promise<[CreateBatchJobInput](../types/CreateBatchJobInput.mdx)>` Method for preparing a batch job for processing ##### Parameters ##### Returns Promise<[CreateBatchJobInput](../types/CreateBatchJobInput.mdx)> ___ #### processJob `Abstract **processJob**(batchJobId): Promise<void>` Method does the actual processing of the job. Should report back on the progress of the operation. ##### Parameters ##### Returns Promise<void> ___ #### shouldRetryOnProcessingError `Protected **shouldRetryOnProcessingError**(batchJob, err): Promise<boolean>` ##### Parameters ##### Returns Promise<boolean> ___ #### shouldRetryTransaction\_ `Protected **shouldRetryTransaction_**(err): boolean` ##### Parameters ` \\| ``{ code: string }``", "description": "", "optional": false, "defaultValue": "", "expandable": false, "children": [] } ]} /> ##### Returns `boolean` ___ #### withTransaction `**withTransaction**(transactionManager?): [AbstractBatchJobStrategy](AbstractBatchJobStrategy.mdx)` ##### Parameters ##### Returns [AbstractBatchJobStrategy](AbstractBatchJobStrategy.mdx)