pub struct MyExecutionRuntime { /* private fields */ }Trait Implementations§
source§impl Debug for MyExecutionRuntime
impl Debug for MyExecutionRuntime
source§impl ExecutionRuntime for MyExecutionRuntime
impl ExecutionRuntime for MyExecutionRuntime
source§fn merge<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestFileMerge>
) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn merge<'life0, 'async_trait>( &'life0 self, request: Request<RequestFileMerge> ) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Register a new execution graph with this execution runtime This kicks off a new executor in an async green-thread to avoid blocking Tonic. If there is already a file with this id in place, we perform a merge with that definition which is our mechanism for runtime mutations.
source§fn list_registered_graphs<'life0, 'async_trait>(
&'life0 self,
request: Request<Empty>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::ListRegisteredGraphsStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_registered_graphs<'life0, 'async_trait>( &'life0 self, request: Request<Empty> ) -> Pin<Box<dyn Future<Output = Result<Response<Self::ListRegisteredGraphsStream>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
List all of the graphs registered by ID with this execution runtime
source§fn list_input_proposals<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestOnlyId>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::ListInputProposalsStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_input_proposals<'life0, 'async_trait>( &'life0 self, request: Request<RequestOnlyId> ) -> Pin<Box<dyn Future<Output = Result<Response<Self::ListInputProposalsStream>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Fetch pending input proposals for a given graph. These should be responded to with external input to the system. Dependent execution nodes will be blocked until these are resolved.
source§fn respond_to_input_proposal<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestInputProposalResponse>
) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn respond_to_input_proposal<'life0, 'async_trait>( &'life0 self, request: Request<RequestInputProposalResponse> ) -> Pin<Box<dyn Future<Output = Result<Response<Empty>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Send a response to an input proposal.
source§fn list_change_events<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestOnlyId>
) -> Pin<Box<dyn Future<Output = Result<Response<Self::ListChangeEventsStream>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_change_events<'life0, 'async_trait>( &'life0 self, request: Request<RequestOnlyId> ) -> Pin<Box<dyn Future<Output = Result<Response<Self::ListChangeEventsStream>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Fetch the resulting changes from the execution of a graph.
source§fn push_worker_event<'life0, 'async_trait>(
&'life0 self,
request: Request<FileAddressedChangeValueWithCounter>
) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn push_worker_event<'life0, 'async_trait>( &'life0 self, request: Request<FileAddressedChangeValueWithCounter> ) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Used to push self-invoke (or other local exec node results) back into the runtime
fn run_query<'life0, 'async_trait>( &'life0 self, request: Request<QueryAtFrame> ) -> Pin<Box<dyn Future<Output = Result<Response<QueryAtFrameResponse>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
source§fn current_file_state<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestOnlyId>
) -> Pin<Box<dyn Future<Output = Result<Response<File>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn current_file_state<'life0, 'async_trait>( &'life0 self, request: Request<RequestOnlyId> ) -> Pin<Box<dyn Future<Output = Result<Response<File>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Get the current graph state of a file at a branch and counter position Read more
source§fn get_parquet_history<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestOnlyId>
) -> Pin<Box<dyn Future<Output = Result<Response<ParquetFile>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_parquet_history<'life0, 'async_trait>( &'life0 self, request: Request<RequestOnlyId> ) -> Pin<Box<dyn Future<Output = Result<Response<ParquetFile>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Get the parquet history for a specific branch and Id - returns bytes Read more
source§fn play<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestAtFrame>
) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn play<'life0, 'async_trait>( &'life0 self, request: Request<RequestAtFrame> ) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Resume execution Read more
source§fn pause<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestAtFrame>
) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn pause<'life0, 'async_trait>( &'life0 self, request: Request<RequestAtFrame> ) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Pause execution Read more
source§fn branch<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestNewBranch>
) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn branch<'life0, 'async_trait>( &'life0 self, request: Request<RequestNewBranch> ) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Split history into a separate branch Read more
source§fn list_branches<'life0, 'async_trait>(
&'life0 self,
request: Request<RequestListBranches>
) -> Pin<Box<dyn Future<Output = Result<Response<ListBranchesRes>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_branches<'life0, 'async_trait>( &'life0 self, request: Request<RequestListBranches> ) -> Pin<Box<dyn Future<Output = Result<Response<ListBranchesRes>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Get all branches Read more
§type ListRegisteredGraphsStream = ReceiverStream<Result<ExecutionStatus, Status>>
type ListRegisteredGraphsStream = ReceiverStream<Result<ExecutionStatus, Status>>
Server streaming response type for the ListRegisteredGraphs method.
§type ListInputProposalsStream = ReceiverStream<Result<InputProposal, Status>>
type ListInputProposalsStream = ReceiverStream<Result<InputProposal, Status>>
Server streaming response type for the ListInputProposals method.
§type ListChangeEventsStream = ReceiverStream<Result<ChangeValueWithCounter, Status>>
type ListChangeEventsStream = ReceiverStream<Result<ChangeValueWithCounter, Status>>
Server streaming response type for the ListChangeEvents method.
§type ListNodeWillExecuteEventsStream = ReceiverStream<Result<NodeWillExecuteOnBranch, Status>>
type ListNodeWillExecuteEventsStream = ReceiverStream<Result<NodeWillExecuteOnBranch, Status>>
Server streaming response type for the ListNodeWillExecuteEvents method.
fn list_node_will_execute_events<'life0, 'async_trait>( &'life0 self, request: Request<RequestOnlyId> ) -> Pin<Box<dyn Future<Output = Result<Response<Self::ListNodeWillExecuteEventsStream>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
source§fn poll_custom_node_will_execute_events<'life0, 'async_trait>(
&'life0 self,
request: Request<FilteredPollNodeWillExecuteEventsRequest>
) -> Pin<Box<dyn Future<Output = Result<Response<RespondPollNodeWillExecuteEvents>, Status>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn poll_custom_node_will_execute_events<'life0, 'async_trait>( &'life0 self, request: Request<FilteredPollNodeWillExecuteEventsRequest> ) -> Pin<Box<dyn Future<Output = Result<Response<RespondPollNodeWillExecuteEvents>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Observe when the server thinks our local node implementation should execute and with what changes Read more
fn ack_node_will_execute_event<'life0, 'async_trait>( &'life0 self, request: Request<RequestAckNodeWillExecuteEvent> ) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
fn push_template_partial<'life0, 'async_trait>( &'life0 self, request: Request<UpsertPromptLibraryRecord> ) -> Pin<Box<dyn Future<Output = Result<Response<ExecutionStatus>, Status>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Auto Trait Implementations§
impl !RefUnwindSafe for MyExecutionRuntime
impl Send for MyExecutionRuntime
impl Sync for MyExecutionRuntime
impl Unpin for MyExecutionRuntime
impl !UnwindSafe for MyExecutionRuntime
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