From 15505863ce2080bdf342930530acc35c0d112df1 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Tue, 19 Apr 2011 04:35:43 +0000 Subject: http_server: less hacky loading of concurrency model Ugh the old way was gross. --- lib/rainbows/http_server.rb | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'lib/rainbows') diff --git a/lib/rainbows/http_server.rb b/lib/rainbows/http_server.rb index 0fb60fe..6d704f4 100644 --- a/lib/rainbows/http_server.rb +++ b/lib/rainbows/http_server.rb @@ -41,12 +41,11 @@ class Rainbows::HttpServer < Unicorn::HttpServer @worker_connections ||= Rainbows::MODEL_WORKER_CONNECTIONS[@use] end - def ready_pipe=(v) - # hacky hook got force Rainbows! to load modules only in workers - if defined?(@master_pid) && @master_pid == Process.ppid - extend(Rainbows.const_get(@use)) - end - super + def worker_loop(worker) + orig = method(:worker_loop) + extend(Rainbows.const_get(@use)) + m = method(:worker_loop) + orig == m ? super(worker) : worker_loop(worker) end def use(*args) -- cgit v1.2.3-24-ge0c7