class Dynflow::Director::WorkItem

Attributes

execution_plan_id[R]
queue[R]
sender_orchestrator_id[R]

Public Class Methods

new(execution_plan_id, queue, sender_orchestrator_id) click to toggle source
# File lib/dynflow/director.rb, line 28
def initialize(execution_plan_id, queue, sender_orchestrator_id)
  @execution_plan_id = execution_plan_id
  @queue = queue
  @sender_orchestrator_id = sender_orchestrator_id
end
new_from_hash(hash, *_args) click to toggle source
# File lib/dynflow/director.rb, line 56
def self.new_from_hash(hash, *_args)
  self.new(hash[:execution_plan_id], hash[:queue], hash[:sender_orchestrator_id])
end

Public Instance Methods

execute() click to toggle source
# File lib/dynflow/director.rb, line 45
def execute
  raise NotImplementedError
end
to_hash() click to toggle source
# File lib/dynflow/director.rb, line 49
def to_hash
  { class: self.class.name,
    execution_plan_id: execution_plan_id,
    queue: queue,
    sender_orchestrator_id: sender_orchestrator_id }
end
world() click to toggle source
# File lib/dynflow/director.rb, line 34
def world
  raise "World expected but not set for the work item #{self}" unless @world
  @world
end
world=(world) click to toggle source

the world to be used for execution purposes of the step. Setting it separately and explicitly as the world can't be serialized

# File lib/dynflow/director.rb, line 41
def world=(world)
  @world = world
end