module WEBrick
class HTTPServerError < ServerError end class HTTPServer < ::WEBrick::GenericServer @http_version: HTTPVersion @mount_tab: MountTable @virtual_hosts: Array[untyped] def initialize: (?Hash[Symbol, untyped] config, ?Hash[Symbol, untyped] default) -> void def run: (TCPSocket sock) -> void def service: (HTTPRequest req, HTTPResponse res) -> void def do_OPTIONS: (HTTPRequest req, HTTPResponse res) -> void def mount: (String dir, singleton(HTTPServlet::AbstractServlet) servlet, *untyped options) -> void def mount_proc: (String dir, ?HTTPServlet::ProcHandler::_Callable proc) -> void | (String dir, ?nil proc) { (HTTPRequest, HTTPResponse) -> void } -> void def unmount: (String dir) -> MountTable::value_type alias umount unmount def search_servlet: (String path) -> [singleton(HTTPServlet::AbstractServlet), Array[untyped], String, String]? def virtual_host: (instance server) -> void def lookup_server: (HTTPRequest req) -> instance? def access_log: (Hash[Symbol, untyped] config, HTTPRequest req, HTTPResponse res) -> void # # Creates the HTTPRequest used when handling the HTTP # request. Can be overridden by subclasses. def create_request: (Hash[Symbol, untyped] with_webrick_config) -> HTTPRequest # # Creates the HTTPResponse used when handling the HTTP # request. Can be overridden by subclasses. def create_response: (Hash[Symbol, untyped] with_webrick_config) -> HTTPResponse class MountTable type value_type = [singleton(HTTPServlet::AbstractServlet), Array[untyped]] @tab: Hash[String, value_type] @scanner: Regexp def initialize: () -> void def []: (String dir) -> value_type def []=: (String dir, value_type val) -> value_type def delete: (String dir) -> value_type def scan: (String path) -> [String, String] private def compile: () -> void def normalize: (String dir) -> String end end
end