class Omnikassa2::BaseRequest
Public Class Methods
new(config = {})
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 3 def initialize(config = {}) @access_token = config.fetch(:access_token, Omnikassa2::AccessTokenProvider.instance) end
Public Instance Methods
body()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 27 def body nil end
content_type()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 19 def content_type nil end
custom_token()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 15 def custom_token nil end
headers()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 50 def headers value = {} add_authorization_header value add_content_type_header value value end
http_method()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 7 def http_method :get end
path()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 23 def path '/' end
response_decorator()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 31 def response_decorator Omnikassa2::BaseResponse end
send()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 35 def send request = request_class.new(uri, headers) request.body = body_raw http_response = Net::HTTP.start( uri.hostname, uri.port, use_ssl: true ) do |http| http.request(request) end response_decorator.nil? ? http_response : response_decorator.new(http_response) end
Private Instance Methods
add_content_type_header(value)
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 98 def add_content_type_header(value) case content_type when :json value['Content-Type'] = 'application/json' end end
body_raw()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 59 def body_raw return nil if body.nil? return body if content_type.nil? case content_type when :json body.to_json end end
request_class()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 69 def request_class case http_method when :get Net::HTTP::Get when :post Net::HTTP::Post when :put Net::HTTP::Put when :delete Net::HTTP::Delete end end
uri()
click to toggle source
# File lib/omnikassa2/requests/base_request.rb, line 82 def uri tmp_url = Omnikassa2.base_url + path URI(tmp_url) end