class ASeriesOfTubes::Tubes::Tuber
Constants
- METHODS
Attributes
tubes[R]
Public Class Methods
new()
click to toggle source
# File lib/a_series_of_tubes/tubes/tuber.rb, line 8 def initialize @tubes = [] end
Public Instance Methods
add_tube(pattern, method, controller, action)
click to toggle source
# File lib/a_series_of_tubes/tubes/tuber.rb, line 18 def add_tube pattern, method, controller, action tube = Tubes::Tube.new pattern, method, controller, action self.tubes << tube end
draw(&tubes)
click to toggle source
# File lib/a_series_of_tubes/tubes/tuber.rb, line 23 def draw &tubes self.instance_eval &tubes end
match(request)
click to toggle source
# File lib/a_series_of_tubes/tubes/tuber.rb, line 27 def match request self.tubes.find { |tube| tube.matches? request } end
run(request, response)
click to toggle source
# File lib/a_series_of_tubes/tubes/tuber.rb, line 31 def run request, response tube = match request tube ? tube.run(request, response) : not_found(response) end
Private Instance Methods
not_found(response)
click to toggle source
# File lib/a_series_of_tubes/tubes/tuber.rb, line 38 def not_found response response.status = 404 response.write "Page Not Found" end