Sha256: 7012982749d6b5a470523a72a543e18dc649de422b6b282b2a9e621aae0b6b62
Contents?: true
Size: 988 Bytes
Versions: 4
Compression:
Stored size: 988 Bytes
Contents
require 'webrick' module YARD module Server class WebrickAdapter < Adapter def start server_options[:ServerType] = WEBrick::Daemon if server_options[:daemonize] server = WEBrick::HTTPServer.new(server_options) server.mount('/', WebrickServlet, self) trap("INT") { server.shutdown } server.start end end class WebrickServlet < WEBrick::HTTPServlet::AbstractServlet attr_accessor :adapter def initialize(server, adapter) super self.adapter = adapter end def do_GET(request, response) status, headers, body = *adapter.router.call(request) response.status = status response.body = body.is_a?(Array) ? body[0] : body headers.each do |key, value| response[key] = value end end end end end # @private class WEBrick::HTTPRequest def xhr?; (self['X-Requested-With'] || "").downcase == 'xmlhttprequest' end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
yard-0.6.3 | lib/yard/server/webrick_adapter.rb |
yard-0.6.2 | lib/yard/server/webrick_adapter.rb |
yard-0.6.1 | lib/yard/server/webrick_adapter.rb |
yard-0.6.0 | lib/yard/server/webrick_adapter.rb |