Class: AWS::Flow::WorkflowOptions

Inherits:
Options
  • Object
show all
Defined in:
lib/aws/decider/options.rb

Overview

Options for workflows

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Options

#get_options, inherited, #initialize, #method_missing

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_policyObject

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 the StartWorkflowExecution action 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.



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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 get_full_options
    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_methodObject

TBD



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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 get_full_options
    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_timeoutObject

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 the StartWorkflowExecution action 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.



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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

#inputObject

A string of up to 32768 characters, to be provided to the workflow execution.



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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 get_full_options
    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_listObject

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 ListOpenWorkflowExecutions or ListClosedWorkflowExecutions and specifying a TagFilter.



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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 get_full_options
    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_listObject

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 the StartWorkflowExecution action or the StartChildWorkflowExecution Decision.



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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 get_full_options
    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_timeoutObject

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 the StartWorkflowExecution action 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.



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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

#versionObject

The version of the Workflow. If you update any of these options, you must update the version.



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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 get_full_options
    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_idObject

Required. The workflow id of the workflow execution.

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). Also, it must not contain the literal string “arn”.



335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
# File 'lib/aws/decider/options.rb', line 335

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 get_full_options
    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_optionsHash

Returns a hash containing the runtime workflow options.

Returns:

  • (Hash)

    a hash of options with corresponding values.



346
347
348
349
350
351
352
353
354
# File 'lib/aws/decider/options.rb', line 346

def get_full_options
  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