Class: Taskinator::Task::SubProcess
- Inherits:
-
Taskinator::Task
- Object
- Taskinator::Task
- Taskinator::Task::SubProcess
- Defined in:
- lib/taskinator/task.rb
Overview
a task which delegates to another process
Instance Attribute Summary collapse
-
#sub_process ⇒ Object
readonly
Returns the value of attribute sub_process.
Attributes inherited from Taskinator::Task
#next, #options, #process, #uuid
Instance Method Summary collapse
- #accept(visitor) ⇒ Object
- #can_complete_task? ⇒ Boolean
-
#initialize(process, sub_process, options = {}) ⇒ SubProcess
constructor
A new instance of SubProcess.
- #start ⇒ Object
Methods inherited from Taskinator::Task
#<=>, base_key, #cancelled?, define_step_task, define_sub_process_task, #enqueue, #on_completed_entry, #paused?, #to_s
Methods included from Persistence
Constructor Details
#initialize(process, sub_process, options = {}) ⇒ SubProcess
Returns a new instance of SubProcess.
153 154 155 156 157 158 159 |
# File 'lib/taskinator/task.rb', line 153 def initialize(process, sub_process, ={}) super(process, ) raise ArgumentError, 'sub_process' if sub_process.nil? || !sub_process.is_a?(Process) @sub_process = sub_process @sub_process.parent = self end |
Instance Attribute Details
#sub_process ⇒ Object (readonly)
Returns the value of attribute sub_process.
151 152 153 |
# File 'lib/taskinator/task.rb', line 151 def sub_process @sub_process end |
Instance Method Details
#accept(visitor) ⇒ Object
170 171 172 173 |
# File 'lib/taskinator/task.rb', line 170 def accept(visitor) super visitor.visit_process(:sub_process) end |
#can_complete_task? ⇒ Boolean
165 166 167 168 |
# File 'lib/taskinator/task.rb', line 165 def can_complete_task? # NOTE: this works out-of-process, so there isn't any issue sub_process.completed? end |
#start ⇒ Object
161 162 163 |
# File 'lib/taskinator/task.rb', line 161 def start sub_process.start! end |