class DRb::HTTP0::Server
Attributes
uri[R]
Public Class Methods
new(uri, config)
click to toggle source
# File lib/drb/http0serv.rb, line 53 def initialize(uri, config) @uri = uri @config = config @queue = Thread::Queue.new setup_webrick(uri) end
Public Instance Methods
accept()
click to toggle source
# File lib/drb/http0serv.rb, line 69 def accept client = @queue.pop ServerSide.new(client, @config) end
close()
click to toggle source
# File lib/drb/http0serv.rb, line 60 def close @server.shutdown if @server @server = nil end
push(callback)
click to toggle source
# File lib/drb/http0serv.rb, line 65 def push(callback) @queue.push(callback) end
setup_webrick(uri)
click to toggle source
# File lib/drb/http0serv.rb, line 74 def setup_webrick(uri) logger = WEBrick::Log::new($stderr, WEBrick::Log::FATAL) u = URI.parse(uri) s = WEBrick::HTTPServer.new(:Port => u.port, :AddressFamily => Socket::AF_INET, :BindAddress => u.host, :Logger => logger, :ServerType => Thread) s.mount(u.path, Callback, self) @server = s s.start end