Class: Nile::Router

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/nile/framework.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeRouter

Returns a new instance of Router.



10
11
12
# File 'lib/nile/framework.rb', line 10

def initialize
    @routes = []
end

Instance Attribute Details

#routesObject

Returns the value of attribute routes.



8
9
10
# File 'lib/nile/framework.rb', line 8

def routes
  @routes
end

Instance Method Details

#add_route(verb, url, block) ⇒ Object



14
15
16
# File 'lib/nile/framework.rb', line 14

def add_route(verb, url, block)
    @routes << {:verb => verb, :url => url, :cb => block}
end

#find_route(verb, url) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/nile/framework.rb', line 18

def find_route verb, url
    @routes.each do |route|
        if route[:url] == url && (route[:verb] == verb || verb == "HEAD")
            return route
        end
    end
    return {:cb => Proc.new { [404, {}, ["Not found"]] } }
end