Class: OpenPayU::Documents::Response

Inherits:
OpenPayU::Document show all
Defined in:
lib/openpayu/documents/response.rb

Instance Attribute Summary (collapse)

Instance Method Summary (collapse)

Methods inherited from OpenPayU::Document

#deep_transform_keys, #generate_signature, #generate_signature_structure, #underscore_keys, #verify_response

Constructor Details

- (Response) initialize(data)

Returns a new instance of Response



7
8
9
10
11
12
13
# File 'lib/openpayu/documents/response.rb', line 7

def initialize(data)
  @response = data[:response]
  @request = data[:request]
  @body = @response.body.is_a?(StringIO) ? @response.body.string :
    @response.body
  parse_data if verify_response
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

- (Object) method_missing(method_name)



15
16
17
# File 'lib/openpayu/documents/response.rb', line 15

def method_missing(method_name)
  @parsed_data[method_name.to_s]
end

Instance Attribute Details

- (Object) body

Returns the value of attribute body



5
6
7
# File 'lib/openpayu/documents/response.rb', line 5

def body
  @body
end

- (Object) parsed_data

Returns the value of attribute parsed_data



5
6
7
# File 'lib/openpayu/documents/response.rb', line 5

def parsed_data
  @parsed_data
end

- (Object) request

Returns the value of attribute request



5
6
7
# File 'lib/openpayu/documents/response.rb', line 5

def request
  @request
end

- (Object) response

Returns the value of attribute response



5
6
7
# File 'lib/openpayu/documents/response.rb', line 5

def response
  @response
end

Instance Method Details

- (Object) order_status



27
28
29
# File 'lib/openpayu/documents/response.rb', line 27

def order_status
  @parsed_data['orders']['orders'][1]['status']
end

- (Object) parse_data



19
20
21
# File 'lib/openpayu/documents/response.rb', line 19

def parse_data
  @parsed_data = underscore_keys JSON.parse(@body)
end

- (Object) status



23
24
25
# File 'lib/openpayu/documents/response.rb', line 23

def status
  @parsed_data['status']
end