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:
- 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:
- 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