Context and Task
Data Context is an object injected into logic functions at runtime, which containes some key components:
Before LOC v0.7.0
, agents are also part of the context object. Still, context, tasks and payloads have strong ties with agents and are in fact often used together.
Availability
- ✓ Generic logic
- ✓ Aggregator logic
Context
When a logic gets executed, a data context object ctx
will be available in both run
and handleError
functions:
export async function run(ctx) {
// ctx is the data context
}
Task
export async function run(ctx) {
const task = ctx.task;
}
A task is an execution of this particular data process.
Member | Type | Description |
---|---|---|
taskId | taskId , which is { id: string, executionId: string } | Task ID and execution ID |
startAt | Date | Task start date |
dataProcess | IdentityContext (see below) | Data process permanent ID |
currentLogic | IdentityContext | Current logic permanent ID |
executedLogics | Array<IdentityContext> | An array of identity of executed logic |
Type IdentityContext
represents the identity of a logic or a data process:
Member | Type | Description |
---|---|---|
name | string | Name |
permanentIdentity | string | Permanent identity string |
revision | number | Revision number |
Example
const taskId = ctx.task.taskId.id;
const executionId = ctx.task.taskId.executionId;
const pid = ctx.task.dataProcess.permanentIdentity;