class HerdstWorker::Signals::Facade
Public Class Methods
listen(process_path)
click to toggle source
# File lib/herdst_worker/signals/facade.rb, line 5 def self.listen(process_path) write_process_file(process_path) # Start Signal.trap "USR1" do |x| HerdstWorker::Queue::Facade.start end # Halt Signal.trap "USR2" do |x| HerdstWorker::Queue::Facade.halt end # Stop (abort) Signal.trap "ABRT" do |x| HerdstWorker::Queue::Facade.stop end end
Private Class Methods
write_process_file(process_path)
click to toggle source
# File lib/herdst_worker/signals/facade.rb, line 25 def self.write_process_file(process_path) # Write process id to file so we can signal the current process process_id = "#{$$}" process_file = process_path + "/process_id" File.open(process_file, "w") { |file| file.write(process_id) } end