module ProcessLock

Constants

VERSION

Public Class Methods

ensure_only_process(name = nil, &block) click to toggle source
# File lib/ProcessLock.rb, line 7
def ensure_only_process(name = nil, &block)
  raise ArgumentError, "No block given" unless block_given?
  name ||= infer_name(block)
  locker = NixLocker.new
  locker.ensure_only_process(name, &block)
end

Private Class Methods

infer_name(block) click to toggle source
# File lib/ProcessLock.rb, line 16
def infer_name(block)
  method = block.binding.eval('__method__')
  file = File.basename(block.binding.eval('__FILE__'), '.*')
  "#{file}-#{method}"
end