Class: AWS::Flow::WorkflowOptions
- Defined in:
- lib/aws/decider/options.rb
Overview
Options for workflows.
Direct Known Subclasses
ContinueAsNewOptions, StartWorkflowOptions, WorkflowOptionsWithDefaults
Instance Attribute Summary collapse
-
#child_policy ⇒ Object
The optional policy to use for the child workflow executions when a workflow execution of this type is terminated, by calling the ‘TerminateWorkflowExecution` action explicitly or due to an expired timeout.
-
#execution_method ⇒ Object
Options for workflows.
-
#execution_start_to_close_timeout ⇒ Object
The optional maximum duration, specified when registering the workflow type, for executions of this workflow type.
-
#input ⇒ Object
A string of up to 32768 characters to be provided to the workflow execution.
-
#tag_list ⇒ Object
The list of tags to associate with the child workflow execution.
-
#task_list ⇒ Object
The optional task list, specified when registering the workflow type, for decisions tasks scheduled for workflow executions of this type.
-
#task_start_to_close_timeout ⇒ Object
The optional maximum duration, specified when registering the workflow type, that a decision task for executions of this workflow type might take before returning completion or failure.
-
#version ⇒ Object
A string that represents the version of the workflow.
-
#workflow_id ⇒ Object
Required.
Attributes included from Utilities::UpwardLookups
Attributes included from Utilities::UpwardLookups::InstanceMethods
Instance Method Summary collapse
-
#get_full_options ⇒ Hash
Returns a hash containing the runtime workflow options.
Methods inherited from Options
#get_options, inherited, #initialize, #method_missing
Methods included from Utilities::UpwardLookups
#held_properties, #properties, #property
Methods included from Utilities::UpwardLookups::InstanceMethods
Constructor Details
This class inherits a constructor from AWS::Flow::Options
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class AWS::Flow::Options
Instance Attribute Details
#child_policy ⇒ Object
The optional policy to use for the child workflow executions when a workflow execution of this type is terminated, by calling the ‘TerminateWorkflowExecution` action explicitly or due to an expired timeout.
This can be overridden when starting a workflow execution using AWS::Flow::WorkflowClient#start_execution or the ‘StartChildWorkflowExecution` decision.
The supported child policies are:
-
‘TERMINATE`: the child executions will be terminated.
-
‘REQUEST_CANCEL`: a request to cancel will be attempted for each child execution by recording a `WorkflowExecutionCancelRequested` event in its history. It is up to the decider to take appropriate actions when it receives an execution history with this event.
-
‘ABANDON`: no action will be taken. The child executions will continue to run.
The default is ‘TERMINATE`.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
#execution_method ⇒ Object
Options for workflows.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
#execution_start_to_close_timeout ⇒ Object
The optional maximum duration, specified when registering the workflow type, for executions of this workflow type.
This default can be overridden when starting a workflow execution using AWS::Flow::WorkflowClient#start_execution or with the ‘StartChildWorkflowExecution` decision.
The valid values are integers greater than or equal to zero. An integer value can be used to specify the duration in seconds while ‘NONE` can be used to specify unlimited duration.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
#input ⇒ Object
A string of up to 32768 characters to be provided to the workflow execution. This will be received in the decider when polling for decision tasks.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
#tag_list ⇒ Object
The list of tags to associate with the child workflow execution.
A maximum of five tags can be specified. You can list workflow executions with a specific tag by calling [AWS::SimpleWorkflow::Client#list_open_workflow_executions](docs.aws.amazon.com/AWSRubySDK/latest/AWS/SimpleWorkflow/Client.html#list_open_workflow_executions-instance_method) or [AWS::SimpleWorkflow::Client#list_closed_workflow_executions](docs.aws.amazon.com/AWSRubySDK/latest/AWS/SimpleWorkflow/Client.html#list_closed_workflow_executions-instance_method) and specifying a tag to filter on.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
#task_list ⇒ Object
The optional task list, specified when registering the workflow type, for decisions tasks scheduled for workflow executions of this type.
This default can be overridden when starting a workflow execution using AWS::Flow::WorkflowClient#start_execution or the ‘StartChildWorkflowExecution` decision.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
#task_start_to_close_timeout ⇒ Object
The optional maximum duration, specified when registering the workflow type, that a decision task for executions of this workflow type might take before returning completion or failure.
If the task does not close in the specified time, then the task is automatically timed out and rescheduled. If the decider eventually reports a completion or failure, it is ignored. This default can be overridden when starting a workflow execution using AWS::Flow::WorkflowClient#start_execution or the ‘StartChildWorkflowExecution` decision.
The valid values are integers greater than or equal to 0. An integer value can be used to specify the duration in seconds while ‘NONE` can be used to specify unlimited duration. The default is `30`.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
#version ⇒ Object
A string that represents the version of the workflow. This can be any alphanumeric string. If you update any of the other options, you must also update the version.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
#workflow_id ⇒ Object
Required. The workflow ID of the workflow execution. The workflow ID must follow these rules:
-
The specified string must not start or end with whitespace.
-
It must not contain a ‘:` (colon), `/` (slash), `|` (vertical bar), or any control characters (`u0000`-`u001f` | `u007f`-`u009f`).
-
It must not contain the literal string “arn”.
413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 |
# File 'lib/aws/decider/options.rb', line 413 class WorkflowOptions < Options properties(:version, :input, :workflow_id, :execution_start_to_close_timeout, :task_start_to_close_timeout, :task_list, :execution_method) property(:tag_list, []) property(:child_policy, [lambda(&:to_s), lambda(&:upcase)]) property(:data_converter, []) default_classes << WorkflowDefaults.new # Returns a hash containing the runtime workflow options. # # @return [Hash] A hash of options with corresponding values. # def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end end |
Instance Method Details
#get_full_options ⇒ Hash
Returns a hash containing the runtime workflow options.
424 425 426 427 428 429 430 431 432 |
# File 'lib/aws/decider/options.rb', line 424 def result = {} usable_properties = self.class.held_properties usable_properties.delete(:from_class) usable_properties.each do |option| result[option] = self.send(option) if self.send(option) && self.send(option) != "" end result end |