Skip to main content

@terascope/job-components / operations/core/operation-core / default

Class: default<T>

Defined in: job-components/src/operations/core/operation-core.ts:17

A base class for supporting operations that run on a "Worker", that supports the job execution lifecycle events. This class will likely not be used externally since Teraslice only supports a few types varients based on this class.

See [[Core]] more information

Extends​

Extended by​

Type Parameters​

Type ParameterDefault type
TOpConfig

Implements​

Constructors​

Constructor​

new default<T>(context, opConfig, executionConfig): OperationCore<T>

Defined in: job-components/src/operations/core/operation-core.ts:24

Parameters​

ParameterType
contextContext
opConfigOpConfig & T
executionConfigExecutionConfig

Returns​

OperationCore<T>

Overrides​

default.constructor

Properties​

PropertyModifierTypeInherited fromDefined in
contextreadonlyReadonly<T>default.contextjob-components/src/operations/core/core.ts:10
deadLetterActionpublicstring-job-components/src/operations/core/operation-core.ts:22
eventsreadonlyEventEmitterdefault.eventsjob-components/src/operations/core/core.ts:13
executionConfigreadonlyReadonly<ExecutionConfig>default.executionConfigjob-components/src/operations/core/core.ts:11
loggerreadonlyLoggerdefault.loggerjob-components/src/operations/core/core.ts:12
opConfigreadonlyReadonly<OpConfig & T>-job-components/src/operations/core/operation-core.ts:21

Methods​

createAPI()​

createAPI<A>(name, ...params): Promise<A>

Defined in: job-components/src/operations/core/operation-core.ts:43

Create an API and add it to the operation lifecycle

Type Parameters​

Type ParameterDefault type
A extends OpAPIOpAPI

Parameters​

ParameterType
namestring
...paramsany[]

Returns​

Promise<A>


getAPI()​

getAPI<A>(name): A

Defined in: job-components/src/operations/core/operation-core.ts:50

Get a reference to an existing API

Type Parameters​

Type ParameterDefault type
A extends OpAPIOpAPI

Parameters​

ParameterType
namestring

Returns​

A


initialize()​

initialize(): Promise<void>

Defined in: job-components/src/operations/core/operation-core.ts:32

Called during execution initialization, when this is called perform any async setup.

Returns​

Promise<void>

Implementation of​

WorkerOperationLifeCycle.initialize

Overrides​

default.initialize


rejectRecord()​

rejectRecord(input, err): null

Defined in: job-components/src/operations/core/operation-core.ts:88

Reject a record using the dead letter action

Based on OpConfig._dead_letter_action the transformation can be handled any of the following ways:

  • "throw": throw the original error
  • "log": log the error and the data
  • "none": skip the error entirely OR a string to specify the api to use as the dead letter queue

Parameters​

ParameterType
inputunknown
errError

Returns​

null

null


shutdown()​

shutdown(): Promise<void>

Defined in: job-components/src/operations/core/operation-core.ts:36

Called during execution shutdown, when this is cleanup any open connections or destroy any in-memory state.

Returns​

Promise<void>

Implementation of​

WorkerOperationLifeCycle.shutdown

Overrides​

default.shutdown


tryRecord()​

tryRecord<I, R>(fn): (input) => R | null

Defined in: job-components/src/operations/core/operation-core.ts:63

Try catch a transformation on a record and place any failed records in a dead letter queue

See #rejectRecord for handling

Type Parameters​

Type Parameter
I
R

Parameters​

ParameterTypeDescription
fn(input) => Ra function to transform the data with

Returns​

a curried a function that will be called with the data and handle the dead letter action

(input) => R | null