Class: Uphold::Request

Inherits:
Object
  • Object
show all
Includes:
HTTParty
Defined in:
lib/uphold/request.rb

Defined Under Namespace

Classes: APIError

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request_data) ⇒ Request

Returns a new instance of Request.



28
29
30
31
32
# File 'lib/uphold/request.rb', line 28

def initialize(request_data)
  @path = request_data.endpoint
  @data = request_data.payload
  @headers = request_data.headers
end

Class Method Details

.perform_with_object(http_method, request_data) ⇒ Object



20
21
22
23
24
25
26
# File 'lib/uphold/request.rb', line 20

def self.perform_with_object(http_method, request_data)
  response = new(request_data).public_send(http_method)

  with_valid_response(response) do
    request_data.entity.new(response.parsed_response)
  end
end

.perform_with_objects(http_method, request_data) ⇒ Object



12
13
14
15
16
17
18
# File 'lib/uphold/request.rb', line 12

def self.perform_with_objects(http_method, request_data)
  response = new(request_data).public_send(http_method)

  with_valid_response(response) do
    request_data.entity.from_collection(response.parsed_response, response.headers['content-range'])
  end
end

.update_base_uriObject



5
6
7
# File 'lib/uphold/request.rb', line 5

def self.update_base_uri
  base_uri "#{Uphold.api_base}/v#{Uphold.api_version}"
end

Instance Method Details

#getObject



34
35
36
37
38
# File 'lib/uphold/request.rb', line 34

def get
  response = self.class.get(path, options)
  log_request_info(:get, response)
  response
end

#postObject



40
41
42
43
44
# File 'lib/uphold/request.rb', line 40

def post
  response = self.class.post(path, options)
  log_request_info(:post, response)
  response
end