lib/mizuno/http_server.rb in mizuno-0.5.1 vs lib/mizuno/http_server.rb in mizuno-0.6.0
- old
+ new
@@ -1,7 +1,8 @@
require 'mizuno/version'
require 'mizuno/java_logger'
+require 'mizuno/reloader'
module Mizuno
class HttpServer
include_class 'java.util.Properties'
include_class 'java.io.ByteArrayInputStream'
@@ -71,10 +72,15 @@
# Servlet handler.
app_handler = ServletContextHandler.new(nil, "/",
ServletContextHandler::NO_SESSIONS)
+ # Optionally wrap with Mizuno::Reloader.
+ threshold = (ENV['RACK_ENV'] == 'production' ? 10 : 1)
+ app = Mizuno::Reloader.new(app, threshold) \
+ if options[:reloadable]
+
# The servlet itself.
rack_servlet = RackServlet.new
rack_servlet.rackup(app)
holder = ServletHolder.new(rack_servlet)
app_handler.addServlet(holder, "/")
@@ -172,11 +178,8 @@
# Use log4j for our logging as well.
@logger = JavaLogger.new
end
end
end
-
-# Register ourselves with Rack when this file gets loaded.
-Rack::Handler.register 'mizuno', 'Mizuno::HttpServer'
# Ensure that we shutdown the server on exit.
at_exit { Mizuno::HttpServer.stop }