google4r-checkout 1.1.2 → 1.1.3
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.
- data/CHANGES +4 -0
- data/lib/google4r/checkout/commands.rb +34 -4
- data/lib/google4r/checkout/xml_generation.rb +41 -8
- metadata +32 -12
data/CHANGES
CHANGED
@@ -168,6 +168,27 @@ module Google4R #:nodoc:
|
|
168
168
|
return RefundAmountNotification.create_from_element xml_doc.root, @frontend
|
169
169
|
when 'chargeback-amount-notification'
|
170
170
|
return ChargebackAmountNotification.create_from_element xml_doc.root, @frontend
|
171
|
+
when 'notification-history-response'
|
172
|
+
next_page_token = xml_doc.root.elements['next-page-token'].try(:value)
|
173
|
+
notifications = xml_doc.root.elements['notifications'].elements.map do |element|
|
174
|
+
case element.name
|
175
|
+
when 'new-order-notification'
|
176
|
+
NewOrderNotification.create_from_element element, @frontend
|
177
|
+
when 'risk-information-notification'
|
178
|
+
RiskInformationNotification.create_from_element element, @frontend
|
179
|
+
when 'order-state-change-notification'
|
180
|
+
OrderStateChangeNotification.create_from_element element, @frontend
|
181
|
+
when 'charge-amount-notification'
|
182
|
+
ChargeAmountNotification.create_from_element element, @frontend
|
183
|
+
when 'authorization-amount-notification'
|
184
|
+
AuthorizationAmountNotification.create_from_element element, @frontend
|
185
|
+
when 'refund-amount-notification'
|
186
|
+
RefundAmountNotification.create_from_element element, @frontend
|
187
|
+
when 'chargeback-amount-notification'
|
188
|
+
ChargebackAmountNotification.create_from_element element, @frontend
|
189
|
+
end
|
190
|
+
end
|
191
|
+
{ :notifications => notifications, :next_page_token => next_page_token }
|
171
192
|
else
|
172
193
|
raise "Unknown response:\n--\n#{xml_doc.to_s}\n--"
|
173
194
|
end
|
@@ -699,12 +720,21 @@ module Google4R #:nodoc:
|
|
699
720
|
# google to the notification callback URL
|
700
721
|
class NotificationHistoryRequestCommand < Command
|
701
722
|
|
702
|
-
attr_reader :serial_number
|
723
|
+
attr_reader :serial_number, :start_time, :end_time, :notification_types, :order_numbers, :next_page_token
|
703
724
|
|
704
|
-
def initialize(frontend,
|
725
|
+
def initialize(frontend, args)
|
705
726
|
super frontend
|
706
|
-
|
707
|
-
|
727
|
+
|
728
|
+
if args.is_a? Hash
|
729
|
+
@serial_number = args[:serial_number]
|
730
|
+
@start_time = args[:start_time]
|
731
|
+
@end_time = args[:end_time]
|
732
|
+
@notification_types = args[:notification_types]
|
733
|
+
@order_numbers = args[:order_numbers]
|
734
|
+
@next_page_token = args[:next_page_token]
|
735
|
+
else
|
736
|
+
@serial_number = args
|
737
|
+
end
|
708
738
|
end
|
709
739
|
|
710
740
|
def to_xml
|
@@ -1020,22 +1020,55 @@ module Google4R #:nodoc:
|
|
1020
1020
|
end
|
1021
1021
|
end
|
1022
1022
|
end
|
1023
|
-
|
1023
|
+
|
1024
1024
|
class NotificationHistoryReportCommandXmlGenerator < CommandXmlGenerator
|
1025
|
-
|
1025
|
+
|
1026
1026
|
def initialize(command)
|
1027
1027
|
@command = command
|
1028
1028
|
end
|
1029
|
-
|
1029
|
+
|
1030
1030
|
protected
|
1031
|
-
|
1031
|
+
|
1032
1032
|
def process_command(command)
|
1033
1033
|
root = super
|
1034
|
-
|
1035
|
-
|
1036
|
-
|
1034
|
+
|
1035
|
+
if command.serial_number
|
1036
|
+
element = root.add_element('serial-number')
|
1037
|
+
element.text = command.serial_number
|
1038
|
+
end
|
1039
|
+
|
1040
|
+
if command.start_time
|
1041
|
+
element = root.add_element('start-time')
|
1042
|
+
element.text = command.start_time.xmlschema
|
1043
|
+
end
|
1044
|
+
|
1045
|
+
if command.end_time
|
1046
|
+
element = root.add_element('end-time')
|
1047
|
+
element.text = command.end_time.xmlschema
|
1048
|
+
end
|
1049
|
+
|
1050
|
+
if command.notification_types.present?
|
1051
|
+
nt_element = root.add_element('notification-types')
|
1052
|
+
command.notification_types.each do |notification_type|
|
1053
|
+
element = nt_element.add_element('notification-type')
|
1054
|
+
element.text = notification_type
|
1055
|
+
end
|
1056
|
+
end
|
1057
|
+
|
1058
|
+
if command.order_numbers.present?
|
1059
|
+
on_element = root.add_element('order-numbers')
|
1060
|
+
command.order_numbers.each do |order_number|
|
1061
|
+
element = on_element.add_element('google-order-number')
|
1062
|
+
element.text = order_number
|
1063
|
+
end
|
1064
|
+
end
|
1065
|
+
|
1066
|
+
if command.next_page_token
|
1067
|
+
element = root.add_element('next-page-token')
|
1068
|
+
element.text = command.next_page_token
|
1069
|
+
end
|
1070
|
+
|
1037
1071
|
end
|
1038
1072
|
end
|
1039
|
-
|
1040
1073
|
end
|
1041
1074
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google4r-checkout
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -14,14 +14,15 @@ authors:
|
|
14
14
|
- Chris Parrish
|
15
15
|
- Larry Salibra
|
16
16
|
- Paul Schreiber
|
17
|
+
- Ben Hutton
|
17
18
|
autorequire:
|
18
19
|
bindir: bin
|
19
20
|
cert_chain: []
|
20
|
-
date: 2012-
|
21
|
+
date: 2012-07-11 00:00:00.000000000 Z
|
21
22
|
dependencies:
|
22
23
|
- !ruby/object:Gem::Dependency
|
23
24
|
name: money
|
24
|
-
requirement:
|
25
|
+
requirement: !ruby/object:Gem::Requirement
|
25
26
|
none: false
|
26
27
|
requirements:
|
27
28
|
- - ! '>='
|
@@ -29,10 +30,15 @@ dependencies:
|
|
29
30
|
version: 2.3.0
|
30
31
|
type: :runtime
|
31
32
|
prerelease: false
|
32
|
-
version_requirements:
|
33
|
+
version_requirements: !ruby/object:Gem::Requirement
|
34
|
+
none: false
|
35
|
+
requirements:
|
36
|
+
- - ! '>='
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
version: 2.3.0
|
33
39
|
- !ruby/object:Gem::Dependency
|
34
40
|
name: mocha
|
35
|
-
requirement:
|
41
|
+
requirement: !ruby/object:Gem::Requirement
|
36
42
|
none: false
|
37
43
|
requirements:
|
38
44
|
- - ! '>='
|
@@ -40,10 +46,15 @@ dependencies:
|
|
40
46
|
version: '0'
|
41
47
|
type: :development
|
42
48
|
prerelease: false
|
43
|
-
version_requirements:
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
44
55
|
- !ruby/object:Gem::Dependency
|
45
56
|
name: nokogiri
|
46
|
-
requirement:
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
47
58
|
none: false
|
48
59
|
requirements:
|
49
60
|
- - ! '>='
|
@@ -51,10 +62,15 @@ dependencies:
|
|
51
62
|
version: '0'
|
52
63
|
type: :development
|
53
64
|
prerelease: false
|
54
|
-
version_requirements:
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
67
|
+
requirements:
|
68
|
+
- - ! '>='
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '0'
|
55
71
|
- !ruby/object:Gem::Dependency
|
56
72
|
name: rake
|
57
|
-
requirement:
|
73
|
+
requirement: !ruby/object:Gem::Requirement
|
58
74
|
none: false
|
59
75
|
requirements:
|
60
76
|
- - ! '>='
|
@@ -62,7 +78,12 @@ dependencies:
|
|
62
78
|
version: '0'
|
63
79
|
type: :development
|
64
80
|
prerelease: false
|
65
|
-
version_requirements:
|
81
|
+
version_requirements: !ruby/object:Gem::Requirement
|
82
|
+
none: false
|
83
|
+
requirements:
|
84
|
+
- - ! '>='
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: '0'
|
66
87
|
description: ! " google4r-checkout is a lightweight, framework-agnostic Ruby library
|
67
88
|
to access the Google Checkout service and implement \n notification handlers. It
|
68
89
|
exposes object-oriented wrappers for all of Google Checkout's API commands and notifications.\n"
|
@@ -171,7 +192,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
171
192
|
version: '0'
|
172
193
|
requirements: []
|
173
194
|
rubyforge_project:
|
174
|
-
rubygems_version: 1.8.
|
195
|
+
rubygems_version: 1.8.23
|
175
196
|
signing_key:
|
176
197
|
specification_version: 3
|
177
198
|
summary: Full-featured Google Checkout library for Ruby
|
@@ -241,4 +262,3 @@ test_files:
|
|
241
262
|
- test/unit/us_zip_area_test.rb
|
242
263
|
- test/unit/world_area_test.rb
|
243
264
|
- test/test_helper.rb
|
244
|
-
has_rdoc:
|