pub struct CommandInstance {
pub specification: CommandSpecification,
pub name: String,
pub block: Block,
pub package_id: PackageId,
pub namespace: String,
pub typing: CommandInstanceType,
}Fields§
§specification: CommandSpecification§name: String§block: Block§package_id: PackageId§namespace: String§typing: CommandInstanceTypeImplementations§
Source§impl CommandInstance
impl CommandInstance
pub async fn post_process_inputs_evaluations( &self, inputs_evaluation: CommandInputsEvaluationResult, ) -> Result<CommandInputsEvaluationResult, Diagnostic>
pub fn get_group(&self) -> String
pub fn evaluate_pre_conditions( &self, construct_did: &ConstructDid, evaluated_inputs: &CommandInputsEvaluationResult, progress_tx: &Sender<BlockEvent>, background_tasks_uuid: &Uuid, ) -> Result<PreConditionEvaluationResult, Diagnostic>
pub fn check_executability( &mut self, construct_did: &ConstructDid, nested_evaluation_values: &ValueStore, evaluated_inputs: &mut CommandInputsEvaluationResult, _signer_instances: &mut HashMap<ConstructDid, SignerInstance>, action_item_response: &Option<&Vec<ActionItemResponse>>, supervision_context: &RunbookSupervisionContext, auth_context: &AuthorizationContext, ) -> Result<Actions, Diagnostic>
pub async fn perform_execution( &self, construct_did: &ConstructDid, nested_evaluation_values: &ValueStore, evaluated_inputs: &CommandInputsEvaluationResult, action_item_requests: &mut Vec<&mut ActionItemRequest>, _action_item_responses: &Option<&Vec<ActionItemResponse>>, progress_tx: &Sender<BlockEvent>, auth_ctx: &AuthorizationContext, ) -> Result<CommandExecutionResult, Diagnostic>
pub async fn prepare_signed_nested_execution( &self, construct_did: &ConstructDid, evaluated_inputs: &CommandInputsEvaluationResult, signers: SignersState, signer_instances: &HashMap<ConstructDid, SignerInstance>, ) -> Result<(SignersState, Vec<(ConstructDid, ValueStore)>), (SignersState, Diagnostic)>
pub fn prepare_nested_execution( &self, construct_did: &ConstructDid, evaluated_inputs: &CommandInputsEvaluationResult, ) -> Result<Vec<(ConstructDid, ValueStore)>, Diagnostic>
pub async fn check_signed_executability( &mut self, construct_did: &ConstructDid, nested_evaluation_values: &ValueStore, evaluated_inputs: &CommandInputsEvaluationResult, signers: SignersState, signer_instances: &mut HashMap<ConstructDid, SignerInstance>, action_item_response: &Option<&Vec<ActionItemResponse>>, action_item_requests: &Option<&Vec<&mut ActionItemRequest>>, supervision_context: &RunbookSupervisionContext, auth_ctx: &AuthorizationContext, ) -> Result<(SignersState, Actions), (SignersState, Diagnostic)>
pub async fn perform_signed_execution( &self, construct_did: &ConstructDid, nested_evaluation_values: &ValueStore, evaluated_inputs: &CommandInputsEvaluationResult, signers: SignersState, signer_instances: &HashMap<ConstructDid, SignerInstance>, action_item_requests: &mut Vec<&mut ActionItemRequest>, _action_item_responses: &Option<&Vec<ActionItemResponse>>, progress_tx: &Sender<BlockEvent>, auth_context: &AuthorizationContext, ) -> Result<(SignersState, CommandExecutionResult), (SignersState, Diagnostic)>
pub fn build_background_task( &self, construct_did: &ConstructDid, nested_evaluation_values: &ValueStore, evaluated_inputs: &CommandInputsEvaluationResult, execution_result: &CommandExecutionResult, progress_tx: &Sender<BlockEvent>, background_tasks_uuid: &Uuid, supervision_context: &RunbookSupervisionContext, cloud_svc_context: &CloudServiceContext, ) -> CommandExecutionFutureResult
pub fn aggregate_nested_execution_results( &self, construct_did: &ConstructDid, nested_values: &Vec<(ConstructDid, ValueStore)>, commands_execution_results: &HashMap<ConstructDid, CommandExecutionResult>, ) -> Result<CommandExecutionResult, Diagnostic>
pub fn evaluate_post_conditions( &self, construct_did: &ConstructDid, evaluated_inputs: &CommandInputsEvaluationResult, command_execution_results: &mut CommandExecutionResult, progress_tx: &Sender<BlockEvent>, background_tasks_uuid: &Uuid, ) -> Result<PostConditionEvaluationResult, Diagnostic>
Trait Implementations§
Source§impl Clone for CommandInstance
impl Clone for CommandInstance
Source§fn clone(&self) -> CommandInstance
fn clone(&self) -> CommandInstance
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl ConstructInstance for CommandInstance
impl ConstructInstance for CommandInstance
fn inputs(&self) -> Vec<Box<dyn EvaluatableInput>>
fn accepts_arbitrary_inputs(&self) -> bool
fn get_expressions_referencing_commands_from_inputs( &self, ) -> Vec<(Option<Box<dyn EvaluatableInput>>, Expression)>
Source§impl Debug for CommandInstance
impl Debug for CommandInstance
Source§impl Serialize for CommandInstance
impl Serialize for CommandInstance
Source§impl WithEvaluatableInputs for CommandInstance
impl WithEvaluatableInputs for CommandInstance
Source§fn get_expression_from_input(&self, input_name: &str) -> Option<Expression>
fn get_expression_from_input(&self, input_name: &str) -> Option<Expression>
Checks the CommandInstance HCL Block for an attribute named input.name
fn name(&self) -> String
fn block(&self) -> &Block
fn get_blocks_for_map( &self, input_name: &str, input_typing: &Type, input_optional: bool, ) -> Result<Option<Vec<Block>>, Vec<Diagnostic>>
fn get_expression_from_block( &self, block: &Block, prop: &ObjectProperty, ) -> Option<Expression>
fn get_expression_from_object( &self, input_name: &str, input_typing: &Type, ) -> Result<Option<Expression>, Vec<Diagnostic>>
fn get_expression_from_object_property( &self, input_name: &str, prop: &ObjectProperty, ) -> Option<Expression>
Source§fn _spec_inputs(&self) -> Vec<Box<dyn EvaluatableInput>>
fn _spec_inputs(&self) -> Vec<Box<dyn EvaluatableInput>>
Defines the inputs for this trait type with evaluatable inputs
fn spec_inputs(&self) -> Vec<Box<dyn EvaluatableInput>>
fn self_referencing_inputs(&self) -> Vec<Box<dyn EvaluatableInput>>
Auto Trait Implementations§
impl Freeze for CommandInstance
impl RefUnwindSafe for CommandInstance
impl Send for CommandInstance
impl Sync for CommandInstance
impl Unpin for CommandInstance
impl UnwindSafe for CommandInstance
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