module AWS::SimpleWorkflow::OptionFormatters

@api private

Protected Instance Methods

duration_opts(options, *opt_names) click to toggle source
# File lib/aws/simple_workflow/option_formatters.rb, line 37
def duration_opts options, *opt_names
  opt_names.each do |opt|
    options[opt] = options[opt].to_s.upcase if options[opt]
  end
end
identity_opt(options) click to toggle source
# File lib/aws/simple_workflow/option_formatters.rb, line 23
def identity_opt options
  options[:identity] || "#{Socket.gethostname}:#{Process.pid}"
end
start_execution_opts(options, workflow_type = nil) click to toggle source
# File lib/aws/simple_workflow/option_formatters.rb, line 43
def start_execution_opts options, workflow_type = nil

  if workflow_type

    options[:workflow_id] ||= SecureRandom.uuid

    if workflow_type.is_a?(WorkflowType)
      options[:workflow_type] = {}
      options[:workflow_type][:name] = workflow_type.name
      options[:workflow_type][:version] = workflow_type.version
    elsif
      workflow_type.is_a?(Hash) and
      workflow_type[:name].is_a?(String) and
      workflow_type[:version] .is_a?(String)and
      workflow_type.keys.length == 2
    then
      options[:workflow_type] = workflow_type
    else
      msg = "expected workflow_type to be a WorkflowType object or " +
        "a hash with :name and :version"
      raise ArgumentError, msg
    end

  end

  upcase_opts(options, :child_policy)

  duration_opts(options,
    :execution_start_to_close_timeout,
    :task_start_to_close_timeout)

  if priority = options[:task_priority]
    options[:task_priority] = priority.to_s
  end

  if options.has_key?(:task_list)
    options[:task_list] = { :name => options[:task_list].to_s }
  end

end
upcase_opts(options, *opt_names) click to toggle source
# File lib/aws/simple_workflow/option_formatters.rb, line 28
def upcase_opts options, *opt_names
  opt_names.each do |opt|
    if options.has_key?(opt)
      options[opt] = options[opt].to_s.upcase
    end
  end
end