paynow_ruby 0.0.1 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2a8672ca12aeec21238f090b036f2e12018a2212ba76ec71cbdec2e46726682b
4
- data.tar.gz: 737dc993c43ccccbfd42e3c438070ced1746e7c8680aee162f5d85f815dc07ad
3
+ metadata.gz: 392e31a93a9b1a94ce33e67d58d9334b2185b2df6d7993295dedd4561d39b305
4
+ data.tar.gz: 5f7d218896b50cb530ae07919a7b37e93aec849bda4ce5f8b5e2e96156b459d1
5
5
  SHA512:
6
- metadata.gz: b2a5089bdb305ce428f6b01ef582da435499d26b65bfd49c9d5cf85f04c872987d3c278ad099035c1af8092073aaac00d6633dbb0e74671100ae69d963810973
7
- data.tar.gz: 90fe740f43504f0483208ae8246409233023e92769d7c257be63a446d269d5149858a9db45588392389f9fb71e2b5f4052d4584c58fc613d790df5d1a72f295d
6
+ metadata.gz: 39bc64fbf61ca92bf566c3e1fb647461002906d7669a1caa9de0375fa61ba5a294acc3d5d902125422b4b5a6bcfe36c088e10e10b9722a31e594ebb3e368d81d
7
+ data.tar.gz: eb0caa43e809d5e4d8ed50dad0f39919ebfa036bb8ad2673f95616ab97c5257c59657c565fafe7d7781d03fb90226a410813d0ccd4d07c8c4164282121cc34a4
@@ -1,8 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'logger'
4
+
3
5
  module Paynow
4
6
  # Centralized configuration for the paynow_ruby gem
5
7
  class Configuration
8
+ @default_logger = Logger.new($stdout)
9
+
6
10
  def self.configure
7
11
  yield self
8
12
  end
@@ -34,5 +38,9 @@ module Paynow
34
38
  def self.payment
35
39
  Paynow::Payment
36
40
  end
41
+
42
+ def self.logger
43
+ @logger || @default_logger
44
+ end
37
45
  end
38
46
  end
@@ -10,10 +10,12 @@ module Paynow
10
10
  end
11
11
 
12
12
  def initialize(params)
13
- @params = params
13
+ @params = params.transform_keys(&:to_sym)
14
14
  end
15
15
 
16
16
  def create_payment
17
+ logger.info("[PAYNOW] CREATE PAYMENT external_id=#{params[:external_id]}")
18
+
17
19
  response = api_client.create_payment(params)
18
20
 
19
21
  parsed_response_body = JSON.parse(response.body)
@@ -41,5 +43,9 @@ module Paynow
41
43
  def payment
42
44
  Paynow::Configuration.payment
43
45
  end
46
+
47
+ def logger
48
+ Paynow::Configuration.logger
49
+ end
44
50
  end
45
51
  end
@@ -16,13 +16,25 @@ module Paynow
16
16
  end
17
17
 
18
18
  def create_payment
19
- uri = URI("https://#{host}/v1/payments")
19
+ logger.info("[PAYNOW] STARTED GET #{uri}")
20
20
 
21
- Net::HTTP.post(uri, json_body, headers)
21
+ response = Net::HTTP.post(uri, json_body, headers)
22
+
23
+ if response.code =~ /^[4-5]/
24
+ logger.error("[PAYNOW] ERROR GET #{uri} status=#{response.code} #{JSON.parse(response.body)['errors']}")
25
+ else
26
+ logger.info("[PAYNOW] FINISHED GET #{uri} status=#{response.code}")
27
+ end
28
+
29
+ response
22
30
  end
23
31
 
24
32
  private
25
33
 
34
+ def uri
35
+ URI("https://#{host}/v1/payments")
36
+ end
37
+
26
38
  def headers
27
39
  {
28
40
  'Api-Key': api_key,
@@ -62,5 +74,9 @@ module Paynow
62
74
  def user_agent
63
75
  Paynow::Configuration.user_agent
64
76
  end
77
+
78
+ def logger
79
+ Paynow::Configuration.logger
80
+ end
65
81
  end
66
82
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paynow_ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Piotr Wald