4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/jsonapionify/api/resource/definitions/request_headers.rb', line 4
def self.extended(klass)
klass.class_eval do
extend JSONAPIonify::InheritedAttributes
inherited_hash_attribute :request_header_definitions
context(:request_headers, persisted: true, readonly: true) do |context|
should_error = false
= self.class..select do |_, v|
v.actions.blank? || v.actions.include?(action_name)
end
= .select do |_, v|
v.required
end
missing_keys =
.keys.map(&:downcase) -
context.request..keys.map(&:downcase)
if context.root_request? && missing_keys.present?
should_error = true
error :headers_missing, missing_keys
end
halt if should_error
context.request.
end
end
end
|