Class: Fluoride::Analyzer::Parser::Patterner::Rails4
Instance Attribute Summary
#rails_routes
Instance Method Summary
collapse
#base_env, for, #initialize, #route_map
Instance Method Details
#build(env) ⇒ Object
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
|
# File 'lib/fluoride-analyzer/parser.rb', line 180
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
176
177
178
|
# File 'lib/fluoride-analyzer/parser.rb', line 176
def build_request(request_env)
ActionDispatch::Request.new(base_env.merge(request_env))
end
|
#route_set ⇒ Object
168
169
170
171
172
173
174
|
# File 'lib/fluoride-analyzer/parser.rb', line 168
def route_set
@route_set ||=
begin
set = Rails.application.routes.router
set
end
end
|