Class: Fluoride::Analyzer::Patterner::Rails4
Instance Attribute Summary
#rails_routes
Instance Method Summary
collapse
#base_env, for, #initialize, #route_map
Instance Method Details
#build(env) ⇒ Object
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
# File 'lib/fluoride-analyzer/patterner.rb', line 86
def build(env)
req = build_request(env)
pattern = nil
route_set.recognize(req) do |route, matches, params|
rails_route = route_map[route]
path_spec = :unrecognized
segment_keys = {}
if route_map.has_key?(route)
rails_route = route_map[route]
path_spec = rails_route.path.spec.to_s
segment_keys = rails_route.segment_keys
end
pattern = RoutePattern.new(route, matches, params, path_spec, segment_keys)
end
if pattern.nil?
pattern = RoutePattern.new(nil,nil,nil,nil,nil)
end
pattern
end
|
#build_request(request_env) ⇒ Object
82
83
84
|
# File 'lib/fluoride-analyzer/patterner.rb', line 82
def build_request(request_env)
ActionDispatch::Request.new(base_env.merge(request_env))
end
|
#route_set ⇒ Object
74
75
76
77
78
79
80
|
# File 'lib/fluoride-analyzer/patterner.rb', line 74
def route_set
@route_set ||=
begin
set = Rails.application.routes.router
set
end
end
|