class AWS::SimpleWorkflow::WorkflowTypeCollection
Public Instance Methods
register(name, version, options = {})
click to toggle source
Registers a new workflow type and its configuration settings for in the current domain.
@param [String] name The name of the workflow type.
@param [String] version The version of the workflow type.
The workflow type consists of the name and version, the combination of which must be unique within the domain.
@param [Hash] options
@option options [Symbol] :default_child_policy (nil) Specifies the default
policy to use for the child workflow executions when a workflow execution of this type is terminated. This default can be overridden when starting a workflow execution. 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.
@option options [Integer,:none] :default_execution_start_to_close_timeout (nil)
The default maximum duration for executions of this workflow type. You can override this default when starting an execution. The value should be a number of seconds (integer) or the symbol +:none+ (implying no timeout).
@option options [String] :default_task_list (nil) Specifies
the default task list to use for scheduling decision tasks for executions of this workflow type. This default is used only if a task list is not provided when starting the workflow execution.
@option options [Integer,:none] :default_task_start_to_close_timeout (nil)
The default maximum duration of decision tasks for this workflow type. The value should be a number of seconds (integer) or the symbol +:none+ (implying no timeout).
@option options [String] :description (nil) Textual description of
the workflow type.
# File lib/aws/simple_workflow/workflow_type_collection.rb, line 66 def register name, version, options = {} options[:domain] = domain.name options[:name] = name options[:version] = version upcase_opts(options, :default_child_policy) duration_opts(options, :default_execution_start_to_close_timeout, :default_task_start_to_close_timeout) if task_list = options[:default_task_list] options[:default_task_list] = { :name => task_list.to_s } end client.register_workflow_type(options) self[name, version] end
Also aliased as: create