aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2011-09-11 17:52:19 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2011-09-12 16:50:49 -0700
commitf5ab6805edbd72f752069d94d88003314e2a8a0a (patch)
tree11248224e01f5f54cf15643041aba99fadcd8063 /actionpack
parentd21e0e2af3d9b21399244c3f3f73378d75cd4697 (diff)
downloadrails-f5ab6805edbd72f752069d94d88003314e2a8a0a.tar.gz
rails-f5ab6805edbd72f752069d94d88003314e2a8a0a.tar.bz2
rails-f5ab6805edbd72f752069d94d88003314e2a8a0a.zip
delete unused code, pass path explicitly to journey
Diffstat (limited to 'actionpack')
-rw-r--r--actionpack/lib/action_dispatch/routing/route.rb32
-rw-r--r--actionpack/lib/action_dispatch/routing/route_set.rb3
2 files changed, 7 insertions, 28 deletions
diff --git a/actionpack/lib/action_dispatch/routing/route.rb b/actionpack/lib/action_dispatch/routing/route.rb
index 10b3d38346..563adb02c4 100644
--- a/actionpack/lib/action_dispatch/routing/route.rb
+++ b/actionpack/lib/action_dispatch/routing/route.rb
@@ -1,27 +1,12 @@
module ActionDispatch
module Routing
class Route #:nodoc:
- attr_reader :app, :conditions, :defaults, :name
- attr_reader :path, :requirements, :set
+ attr_reader :conditions, :path
def initialize(set, app, conditions, requirements, defaults, name, anchor)
@set = set
- @app = app
- @defaults = defaults
- @name = name
-
- # FIXME: we should not be doing this much work in a constructor.
-
- @requirements = requirements.merge(defaults)
- @requirements.delete(:controller) if @requirements[:controller].is_a?(Regexp)
- @requirements.delete_if { |k, v|
- v == Regexp.compile("[^#{SEPARATORS.join}]+")
- }
-
- if path = conditions[:path_info]
- @path = path
- conditions[:path_info] = ::Rack::Mount::Strexp.compile(path, requirements, SEPARATORS, anchor)
- end
+ path = ::Rack::Mount::Strexp.new(
+ conditions[:path_info], requirements, SEPARATORS, anchor)
@verbs = conditions[:request_method] || []
@@ -32,9 +17,8 @@ module ActionDispatch
#
# Here we munge values before they get sent on to rack-mount.
@conditions[:request_method] = %r[^#{verb}$] unless @verbs.empty?
- @conditions[:path_info] = Rack::Mount::RegexpWithNamedGroups.new(@conditions[:path_info]) if @conditions[:path_info]
+ @conditions[:path_info] = Rack::Mount::RegexpWithNamedGroups.new(path)
@conditions.delete_if{ |k,v| k != :path_info && !valid_condition?(k) }
- @requirements.delete_if{ |k,v| !valid_condition?(k) }
end
def verb
@@ -45,15 +29,9 @@ module ActionDispatch
@segment_keys ||= conditions[:path_info].names.compact.map { |key| key.to_sym }
end
- def to_s
- @to_s ||= begin
- "%-6s %-40s %s" % [(verb || :any).to_s.upcase, path, requirements.inspect]
- end
- end
-
private
def valid_condition?(method)
- segment_keys.include?(method) || set.valid_conditions.include?(method)
+ segment_keys.include?(method) || @set.valid_conditions.include?(method)
end
end
end
diff --git a/actionpack/lib/action_dispatch/routing/route_set.rb b/actionpack/lib/action_dispatch/routing/route_set.rb
index 2947eb3f09..21b720806c 100644
--- a/actionpack/lib/action_dispatch/routing/route_set.rb
+++ b/actionpack/lib/action_dispatch/routing/route_set.rb
@@ -346,7 +346,8 @@ module ActionDispatch
def add_route(app, conditions = {}, requirements = {}, defaults = {}, name = nil, anchor = true)
raise ArgumentError, "Invalid route name: '#{name}'" unless name.blank? || name.to_s.match(/^[_a-z]\w*$/i)
route = Route.new(self, app, conditions, requirements, defaults, name, anchor)
- route = @set.add_route(app, route.conditions, defaults, name)
+ path = route.conditions[:path_info]
+ route = @set.add_route(app, path, route.conditions, defaults, name)
named_routes[name] = route if name
route
end