Sha256: 09d3869653c1ae788456409ae4aa0d6e761d283e68ba421c384330f5928d05a1
Contents?: true
Size: 635 Bytes
Versions: 6
Compression:
Stored size: 635 Bytes
Contents
$:.unshift File.dirname(__FILE__) require 'rack_interface/route' class Usher module Interface class RackInterface Request = Struct.new(:path, :method) def initialize @routes = Usher.new end def add(path, options = {}) @routes.add_route(path, options) end def reset! @routes.reset! end def call(env) (path, params) = @routes.recognize(Request.new(env['REQUEST_URI'], env['REQUEST_METHOD'])) env['usher.params'] = params.inject({}){|h,(k,v)| h[k]=v; h } path.route.params.call(env) end end end end
Version data entries
6 entries across 6 versions & 1 rubygems