pub struct OrchestrationExecutor;Expand description
Executes orchestrator functions by replaying history and processing new events.
The executor follows the durable task replay model:
- Process old (past) events to pre-populate completed tasks
- Process new events to deliver results and external events
- Run the orchestrator function (unless suspended, terminated, or already complete)
- Collect pending actions and build the response
Implementations§
Source§impl OrchestrationExecutor
impl OrchestrationExecutor
Sourcepub async fn execute(
orchestrator_fn: &OrchestratorFn,
instance_id: &str,
old_events: Vec<HistoryEvent>,
new_events: Vec<HistoryEvent>,
completion_token: String,
options: &WorkerOptions,
propagated_history: Option<PropagatedHistory>,
) -> Result<WorkflowResponse>
pub async fn execute( orchestrator_fn: &OrchestratorFn, instance_id: &str, old_events: Vec<HistoryEvent>, new_events: Vec<HistoryEvent>, completion_token: String, options: &WorkerOptions, propagated_history: Option<PropagatedHistory>, ) -> Result<WorkflowResponse>
Execute an orchestrator function by replaying history and processing new events.
Returns a WorkflowResponse with the actions to take.
Auto Trait Implementations§
impl Freeze for OrchestrationExecutor
impl RefUnwindSafe for OrchestrationExecutor
impl Send for OrchestrationExecutor
impl Sync for OrchestrationExecutor
impl Unpin for OrchestrationExecutor
impl UnsafeUnpin for OrchestrationExecutor
impl UnwindSafe for OrchestrationExecutor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request