Module: Ntswf::Base
Instance Method Summary collapse
- #activity_task_list ⇒ Object
- #activity_task_lists ⇒ Object
- #activity_type ⇒ Object
- #decision_task_list ⇒ Object
- #default_unit ⇒ Object
- #domain ⇒ Object
- #execution_version ⇒ Object
- #initialize(config) ⇒ Object
- #notify(message, params) ⇒ Object
-
#parse_input(input) ⇒ Hash
Parse the options stored in a task’s input value.
-
#separator ⇒ String
Separator for composite workflow_id.
- #swf ⇒ AWS::SimpleWorkflow
- #workflow_name ⇒ Object
- #workflow_version ⇒ Object
Instance Method Details
#activity_task_list ⇒ Object
46 47 48 |
# File 'lib/ntswf/base.rb', line 46 def activity_task_list activity_task_lists[default_unit] or raise "Missing activity task list configuration" end |
#activity_task_lists ⇒ Object
38 39 40 |
# File 'lib/ntswf/base.rb', line 38 def activity_task_lists @config.activity_task_lists end |
#activity_type ⇒ Object
78 79 80 |
# File 'lib/ntswf/base.rb', line 78 def activity_type @activity_type ||= domain.activity_types[activity_name, workflow_version] end |
#decision_task_list ⇒ Object
42 43 44 |
# File 'lib/ntswf/base.rb', line 42 def decision_task_list @config.decision_task_list or raise "Missing decision task list configuration" end |
#default_unit ⇒ Object
50 51 52 |
# File 'lib/ntswf/base.rb', line 50 def default_unit @default_unit ||= @config.unit.to_s end |
#domain ⇒ Object
34 35 36 |
# File 'lib/ntswf/base.rb', line 34 def domain @domain ||= swf.domains[@config.domain] end |
#execution_version ⇒ Object
54 55 56 |
# File 'lib/ntswf/base.rb', line 54 def execution_version @config.execution_version end |
#initialize(config) ⇒ Object
15 16 17 18 |
# File 'lib/ntswf/base.rb', line 15 def initialize(config) @config = OpenStruct.new(config) raise_if_invalid_task_list end |
#notify(message, params) ⇒ Object
69 70 71 |
# File 'lib/ntswf/base.rb', line 69 def notify(, params) log("#{message.message}\n #{message.backtrace.join("\n ")}") if .kind_of? Exception end |
#parse_input(input) ⇒ Hash
Parse the options stored in a task’s input value
62 63 64 65 66 67 |
# File 'lib/ntswf/base.rb', line 62 def parse_input(input) , legacy_params = JSON.parse(input) = {"name" => } unless .kind_of? Hash .merge!("params" => legacy_params) if legacy_params end |
#separator ⇒ String
74 75 76 |
# File 'lib/ntswf/base.rb', line 74 def separator ";" end |
#swf ⇒ AWS::SimpleWorkflow
21 22 23 24 |
# File 'lib/ntswf/base.rb', line 21 def swf @swf ||= AWS::SimpleWorkflow.new(access_key_id: @config.access_key_id, secret_access_key: @config.secret_access_key, use_ssl: true) end |
#workflow_name ⇒ Object
26 27 28 |
# File 'lib/ntswf/base.rb', line 26 def workflow_name "#{default_unit}-workflow" end |
#workflow_version ⇒ Object
30 31 32 |
# File 'lib/ntswf/base.rb', line 30 def workflow_version "v1" end |