Module: Veritrans::Client

Included in:
Veritrans
Defined in:
lib/veritrans/client.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

._json_decode(params) ⇒ Object



24
25
26
27
28
29
30
31
# File 'lib/veritrans/client.rb', line 24

def self._json_decode(params)
  if defined?(ActiveSupport) && defined?(ActiveSupport::JSON)
    ActiveSupport::JSON.decode(params)
  else
    require 'json' unless defined?(JSON)
    JSON.parse(params)
  end
end

._json_encode(params) ⇒ Object

Failback for activesupport



11
12
13
14
15
16
17
18
# File 'lib/veritrans/client.rb', line 11

def self._json_encode(params)
  if defined?(ActiveSupport) && defined?(ActiveSupport::JSON)
    ActiveSupport::JSON.encode(params)
  else
    require 'json' unless defined?(JSON)
    JSON.pretty_generate(params)
  end
end

Instance Method Details

#_json_encode(params) ⇒ Object



20
21
22
# File 'lib/veritrans/client.rb', line 20

def _json_encode(params)
  Veritrans::Client._json_encode(params)
end

#request_with_logging(method, url, params) ⇒ Object

This is proxy method for make_request to save request and response to logfile



34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/veritrans/client.rb', line 34

def request_with_logging(method, url, params)
  short_url = url.sub(config.api_host, '')
  file_logger.info("Perform #{short_url} \nSending: " + _json_encode(params))

  result = make_request(method, url, params)

  if result.status_code < 300
    file_logger.info("Success #{short_url} \nGot: " + _json_encode(result.data) + "\n")
  else
    file_logger.warn("Failed #{short_url} \nGot: " + _json_encode(result.data) + "\n")
  end

  result
end