Class: BlueprintAgreement::RequestBuilder::RailsRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/blueprint_agreement/request_builder.rb

Constant Summary collapse

HEADER_PATCH =
{
  "CONTENT_TYPE" => "Content-Type",
  "HTTP_AUTHORIZATION" => "Authorization",
  "rack.request.cookie_string" => "Cookie",
  "HTTP_COOKIE" => "Cookie",
}

Instance Method Summary collapse

Constructor Details

#initialize(context) ⇒ RailsRequest

Returns a new instance of RailsRequest.



64
65
66
# File 'lib/blueprint_agreement/request_builder.rb', line 64

def initialize(context)
  @context = context
end

Instance Method Details

#bodyObject



68
69
70
# File 'lib/blueprint_agreement/request_builder.rb', line 68

def body
  @body ||= request.body.read
end

#content_typeObject



72
73
74
# File 'lib/blueprint_agreement/request_builder.rb', line 72

def content_type
  request.content_type
end

#fullpathObject



80
81
82
# File 'lib/blueprint_agreement/request_builder.rb', line 80

def fullpath
  request.fullpath
end

#headersObject



84
85
86
87
88
89
90
# File 'lib/blueprint_agreement/request_builder.rb', line 84

def headers
  HEADER_PATCH.each_with_object({}) do |header, result|
    header_name, key = header
    next unless @context.request.env.key?(header_name)
    result[key] = @context.request.env[header_name]
  end.compact
end

#requestObject



92
93
94
# File 'lib/blueprint_agreement/request_builder.rb', line 92

def request
  @context.request
end

#request_methodObject



76
77
78
# File 'lib/blueprint_agreement/request_builder.rb', line 76

def request_method
  request.request_method
end