API Reference - Events

Core Event Classes

EventBase

class EventBase

Abstract base class for events in the pipeline system. This class serves as a foundation for event-related tasks and defines common properties for event execution.

Class Attributes:

executor: Type[Executor]

The executor type used to handle event execution. Defaults to DefaultExecutor.

executor_config: ExecutorInitializerConfig

Configuration settings for the executor. Defaults to None.

execution_evaluation_state: EventExecutionEvaluationState

Defines how event success/failure is determined. Defaults to SUCCESS_ON_ALL_EVENTS_SUCCESS.

Methods:

process(*args, **kwargs) Tuple[bool, Any]

Abstract method that must be implemented by subclasses. Defines the core event processing logic.

Returns:

A tuple containing (success_status, result_data)

Return type:

Tuple[bool, Any]

on_success(execution_result) EventResult

Handles successful event execution.

Parameters:

execution_result – The result of the event execution

Returns:

EventResult instance with success status

Return type:

EventResult

on_failure(execution_result) EventResult

Handles failed event execution.

Parameters:

execution_result – The execution error or failure data

Returns:

EventResult instance with error status

Return type:

EventResult

goto(descriptor: int, result_status: bool, result: Any, reason='manual', execute_on_event_method: bool = True) None

Switches execution to a different task based on descriptor.

Parameters:
  • descriptor – Task descriptor number to switch to

  • result_status – Success/failure status

  • result – Result data

  • reason – Reason for switching

  • execute_on_event_method – Whether to execute on_success/on_failure methods

RetryPolicy

class RetryPolicy

Configuration class for event retry behavior.

Attributes:

max_attempts: int

Maximum number of retry attempts. Defaults to MAX_RETRIES.

backoff_factor: float

Factor used to calculate delay between retries. Defaults to MAX_BACKOFF_FACTOR.

max_backoff: float

Maximum delay between retries. Defaults to MAX_BACKOFF.

retry_on_exceptions: List[Type[Exception]]

List of exception types that should trigger retries. Defaults to empty list.

ExecutorInitializerConfig

class ExecutorInitializerConfig

Configuration class for executor initialization.

Attributes:

max_workers: int | EMPTY

Maximum number of workers for parallel execution.

max_tasks_per_child: int | EMPTY

Maximum number of tasks per worker process.

thread_name_prefix: str | EMPTY

Prefix for naming executor threads.

host: str | EMPTY

Host address for remote executors.

port: int | EMPTY

Port number for remote executors.

timeout: int | EMPTY

Execution timeout in seconds. Defaults to 30.

use_encryption: bool

Whether to use encryption for remote execution. Defaults to False.

EventExecutionEvaluationState

class EventExecutionEvaluationState

Enum defining different strategies for evaluating event execution success/failure.

Members:

SUCCESS_ON_ALL_EVENTS_SUCCESS

Event is successful only if all tasks succeed. Any failure marks event as failed.

FAILURE_FOR_PARTIAL_ERROR

Event fails if any task fails, regardless of other successes.

SUCCESS_FOR_PARTIAL_SUCCESS

Event is successful if at least one task succeeds.

FAILURE_FOR_ALL_EVENTS_FAILURE

Event fails only if all tasks fail. Any success marks event as successful.

Methods:

context_evaluation(result: ResultSet, errors: List[Exception], context: EvaluationContext = EvaluationContext.SUCCESS) bool

Evaluates execution results based on state and context.

Parameters:
  • result – Set of execution results

  • errors – List of execution errors

  • context – Evaluation context (success/failure)

Returns:

True if evaluation matches state’s criteria

Return type:

bool