Module: Sqreen::WebServer::Unicorn
- Included in:
- Rainbows
- Defined in:
- lib/sqreen/web_server/unicorn.rb
Class Method Summary collapse
Instance Method Summary collapse
- #after_fork ⇒ Object
- #before_fork ⇒ Object
- #forking? ⇒ Boolean
- #master? ⇒ Boolean
- #preload_app? ⇒ Boolean
Class Method Details
.active? ⇒ Boolean
9 10 11 |
# File 'lib/sqreen/web_server/unicorn.rb', line 9 def self.active? Sqreen::Dependency.const_exist?('Unicorn::SocketHelper') && ObjectSpace.each_object(::Unicorn::SocketHelper).count > 0 end |
Instance Method Details
#after_fork ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/sqreen/web_server/unicorn.rb', line 33 def after_fork after_fork = master.after_fork after_fork_wrapper = lambda do |a, b| after_fork.call(a, b).tap { yield } end master.after_fork = after_fork_wrapper end |
#before_fork ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/sqreen/web_server/unicorn.rb', line 25 def before_fork before_fork = master.before_fork before_fork_wrapper = lambda do |a, b| before_fork.call(a, b).tap { yield } end master.before_fork = before_fork_wrapper end |
#forking? ⇒ Boolean
13 14 15 |
# File 'lib/sqreen/web_server/unicorn.rb', line 13 def forking? true end |
#master? ⇒ Boolean
17 18 19 |
# File 'lib/sqreen/web_server/unicorn.rb', line 17 def master? !master.nil? end |
#preload_app? ⇒ Boolean
21 22 23 |
# File 'lib/sqreen/web_server/unicorn.rb', line 21 def preload_app? ObjectSpace.each_object(::Unicorn::HttpServer).first.preload_app end |