Class: Lurker::Request
- Inherits:
-
Hashie::Dash
- Object
- Hashie::Dash
- Lurker::Request
show all
- Defined in:
- lib/lurker/request.rb
Defined Under Namespace
Classes: NonroutableRequest
Constant Summary
collapse
- PREFIX =
'action_dispatch.request'
Class Method Summary
collapse
Class Method Details
.build_from_action_dispatch(request) ⇒ Object
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/lurker/request.rb', line 18
def self.build_from_action_dispatch(request)
new(
verb: request.method,
endpoint_path: route_name(request),
path_info: request.path_info,
path_params: request.env["#{PREFIX}.path_parameters"].stringify_keys.except('format'),
query_params: request.env["#{PREFIX}.query_parameters"],
payload: request.env["#{PREFIX}.request_parameters"].merge(
request.env["#{PREFIX}.query_parameters"]
).stringify_keys.except('action', "controller", 'format', '_method')
)
end
|
.reject_internal(hash) ⇒ Object
31
32
|
# File 'lib/lurker/request.rb', line 31
def self.reject_internal(hash)
end
|
.route_name(request) ⇒ Object
34
35
36
37
38
39
40
41
|
# File 'lib/lurker/request.rb', line 34
def self.route_name(request)
if defined? Rails
Rails.application.routes.router.recognize(request) do |route, _|
return route.path.spec.to_s.sub('(.:format)', '')
end
raise NonroutableRequest.new("Cannot find named route for: #{request.env['HTTP_HOST']}#{request.path_info}")
end
end
|