class Dynflow::Coordinator::ExecutionLock

Public Class Methods

lock_id(execution_plan_id) click to toggle source
# File lib/dynflow/coordinator.rb, line 278
def self.lock_id(execution_plan_id)
  "execution-plan:#{execution_plan_id}"
end
new(world, execution_plan_id, client_world_id, request_id) click to toggle source
Calls superclass method Dynflow::Coordinator::LockByWorld::new
# File lib/dynflow/coordinator.rb, line 270
def initialize(world, execution_plan_id, client_world_id, request_id)
  super(world)
  @data.merge!(id: self.class.lock_id(execution_plan_id),
               execution_plan_id: execution_plan_id,
               client_world_id: client_world_id,
               request_id: request_id)
end

Public Instance Methods

client_world_id() click to toggle source
# File lib/dynflow/coordinator.rb, line 289
def client_world_id
  @data[:client_world_id]
end
execution_plan_id() click to toggle source

we need to store the following data in case of invalidation of the lock from outside (after the owner world terminated unexpectedly)

# File lib/dynflow/coordinator.rb, line 285
def execution_plan_id
  @data[:execution_plan_id]
end
request_id() click to toggle source
# File lib/dynflow/coordinator.rb, line 293
def request_id
  @data[:request_id]
end