Module: Ntswf::ActivityWorker
- Includes:
- Worker
- Defined in:
- lib/ntswf/activity_worker.rb
Overview
Interface for a worker executing tasks
Constant Summary
Constants included from Worker
Instance Method Summary collapse
-
#on_activity(proc = nil) {|task| ... } ⇒ Object
Configure a proc or block to be called on receiving an AWS::SimpleWorkflow::ActivityTask.
-
#process_activities ⇒ Object
Start the worker loop for activity tasks.
- #process_activity_task ⇒ Object
Methods included from Worker
Methods included from Base
#activity_name, #activity_task_lists, #activity_type, #configure, #decision_task_list, #default_unit, #domain, #execution_id_prefix, #execution_version, #notify, #on_notify, #parse_input, #separator, #swf, #workflow_name, #workflow_version
Instance Method Details
#on_activity(proc = nil) {|task| ... } ⇒ Object
Configure a proc or block to be called on receiving an AWS::SimpleWorkflow::ActivityTask
31 32 33 |
# File 'lib/ntswf/activity_worker.rb', line 31 def on_activity(proc = nil, &block) @task_callback = proc || block end |
#process_activities ⇒ Object
Start the worker loop for activity tasks.
36 37 38 |
# File 'lib/ntswf/activity_worker.rb', line 36 def process_activities loop { in_subprocess :process_activity_task } end |
#process_activity_task ⇒ Object
40 41 42 43 44 45 46 |
# File 'lib/ntswf/activity_worker.rb', line 40 def process_activity_task announce("polling for activity task #{activity_task_list}") domain.activity_tasks.poll_for_single_task(activity_task_list) do |activity_task| announce("got activity task #{activity_task.activity_type.inspect} #{activity_task.input}") process_single_task activity_task end end |