class Explorer::Server::HTTP
Public Class Methods
new(port, options={})
click to toggle source
Calls superclass method
# File lib/explorer/server/http.rb, line 6 def initialize(port, options={}) @map = options.fetch(:hostmap) { Explorer.hostmap } super '0.0.0.0', port, {}, &method(:on_connection) end
Public Instance Methods
handle_request(request)
click to toggle source
# File lib/explorer/server/http.rb, line 18 def handle_request(request) map = @map.resolve(request.headers['Host']) if map Proxy.new(map[:host], map[:port]).handle(request) else request.respond 404, "Map not found (#{request.headers['Host']})" end end
on_connection(connection)
click to toggle source
# File lib/explorer/server/http.rb, line 12 def on_connection(connection) connection.each_request do |request| handle_request(request) end end