class RubyBase::Router
Public Class Methods
delete(arg,&block)
click to toggle source
# File lib/ruby_base/router.rb, line 26 def self.delete(arg,&block) @@data[:DELETE][Regexp.new arg] = block end
get(arg,&block)
click to toggle source
# File lib/ruby_base/router.rb, line 14 def self.get(arg,&block) @@data[:GET][Regexp.new arg] = block end
post(arg,&block)
click to toggle source
# File lib/ruby_base/router.rb, line 18 def self.post(arg,&block) @@data[:POST][Regexp.new arg] = block end
put(arg,&block)
click to toggle source
# File lib/ruby_base/router.rb, line 22 def self.put(arg,&block) @@data[:PUT][Regexp.new arg] = block end
Public Instance Methods
route(method,route,post_data)
click to toggle source
# File lib/ruby_base/router.rb, line 30 def route(method,route,post_data) params = {} params[:post] = Yajl::Parser.parse(post_data.to_s) @@data[method].each_key do |key| t = key.match(route) if t params[:match] = t if @@cache p method return RubyBase::Cache::proxy(method, route, @@data[method][key], params) end # non cached version return Yajl::Encoder.encode(@@data[method][key].call(params)) end end return Yajl::Encoder.encode("Error, no route") end