Sha256: 9fc74005cde4128aea0b38598ead362541e69bff0d3f8ca35aec73df78cc3d37
Contents?: true
Size: 977 Bytes
Versions: 1
Compression:
Stored size: 977 Bytes
Contents
require 'rack' require 'trinidad' gem 'jruby-rack' require 'rack/handler/servlet' module Rack module Handler class Trinidad < Rack::Handler::Servlet def self.run(app, options={}) opts = options.dup # some libs use :Port, :port and :Host, :host, unify this opts.each {|k,v| opts[k.to_s.downcase.to_sym] = v} opts[:app] = app opts[:port] ||= 3000 opts[:address] = opts[:host] || 'localhost' opts[:servlet] = {:instance => servlet, :name => 'RackServlet'} opts[:jruby_max_runtimes] ||= 1 context = org.jruby.rack.embed.Context.new('Trinidad') dispatcher = org.jruby.rack.embed.Dispatcher.new(context, self.new(app)) servlet = org.jruby.rack.embed.Servlet.new(dispatcher, context) ::Trinidad::CommandLineParser.new.load_configuration(opts) ::Trinidad::Server.new.start end end end end Rack::Handler.register 'trinidad', 'Rack::Handler::Trinidad'
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
trinidad-1.3.0 | lib/rack/handler/trinidad.rb |