class Dynflow::Coordinator::SingletonActionLock

Used when there should be only one execution plan for a given action class

Public Class Methods

lock_id(action_class) click to toggle source
# File lib/dynflow/coordinator.rb, line 251
def self.lock_id(action_class)
  'singleton-action:' + action_class
end
new(action_class, execution_plan_id) click to toggle source
Calls superclass method Dynflow::Coordinator::Record.new
# File lib/dynflow/coordinator.rb, line 236
def initialize(action_class, execution_plan_id)
  super
  @data[:owner_id] = "execution-plan:#{execution_plan_id}"
  @data[:execution_plan_id] = execution_plan_id
  @data[:id] = self.class.lock_id(action_class)
end
unique_filter(action_class) click to toggle source
# File lib/dynflow/coordinator.rb, line 247
def self.unique_filter(action_class)
  { :class => self.name, :id => self.lock_id(action_class) }
end

Public Instance Methods

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