Class: Apiphobic::Requests::AcceptHeader

Inherits:
Object
  • Object
show all
Defined in:
lib/apiphobic/requests/accept_header.rb

Constant Summary collapse

ACCEPT_PARAM_PATTERN =
/(?:\A|&)_accept=(.+?)(?=\z|&)/

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request) ⇒ AcceptHeader

Returns a new instance of AcceptHeader.



12
13
14
# File 'lib/apiphobic/requests/accept_header.rb', line 12

def initialize(request)
  self.request = request
end

Instance Attribute Details

#requestObject

Returns the value of attribute request.



10
11
12
# File 'lib/apiphobic/requests/accept_header.rb', line 10

def request
  @request
end

Class Method Details

.resolve(request) ⇒ Object



16
17
18
19
20
# File 'lib/apiphobic/requests/accept_header.rb', line 16

def self.resolve(request)
  return request if request.instance_of?(self)

  new(request)
end

Instance Method Details

#accept_headerObject



22
23
24
25
26
27
28
# File 'lib/apiphobic/requests/accept_header.rb', line 22

def accept_header
  if accept_header_from_header.valid? || accept_header_from_params.invalid?
    raw_accept_header_from_header
  else
    raw_accept_header_from_params
  end
end