class WEBrick::HTTPServlet::AbstractServlet
def self.get_instance(server, *options)
def self.get_instance(server, *options) self.new(server, *options) end
def do_GET(req, res)
def do_GET(req, res) raise HTTPStatus::NotFound, "not found." end
def do_HEAD(req, res)
def do_HEAD(req, res) do_GET(req, res) end
def do_OPTIONS(req, res)
def do_OPTIONS(req, res) m = self.methods.grep(/\Ado_([A-Z]+)\z/) {$1} m.sort! res["allow"] = m.join(",") end
def initialize(server, *options)
def initialize(server, *options) @server = @config = server @logger = @server[:Logger] @options = options end
def redirect_to_directory_uri(req, res)
def redirect_to_directory_uri(req, res) if req.path[-1] != ?/ location = WEBrick::HTTPUtils.escape_path(req.path + "/") if req.query_string && req.query_string.bytesize > 0 location << "?" << req.query_string end res.set_redirect(HTTPStatus::MovedPermanently, location) end end
def service(req, res)
def service(req, res) method_name = "do_" + req.request_method.gsub(/-/, "_") if respond_to?(method_name) __send__(method_name, req, res) else raise HTTPStatus::MethodNotAllowed, "unsupported method '#{req.request_method}'." end end