peddler 0.6.5 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (220) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +62 -81
  4. data/lib/mws/cart_information.rb +13 -0
  5. data/lib/mws/customer_information.rb +16 -0
  6. data/lib/mws/feeds.rb +110 -1
  7. data/lib/mws/fulfillment_inbound_shipment.rb +13 -1
  8. data/lib/mws/fulfillment_inventory.rb +15 -1
  9. data/lib/mws/fulfillment_outbound_shipment.rb +17 -1
  10. data/lib/mws/off_amazon_payments.rb +15 -1
  11. data/lib/mws/orders.rb +100 -1
  12. data/lib/mws/products.rb +238 -1
  13. data/lib/mws/recommendations.rb +13 -1
  14. data/lib/mws/reports.rb +221 -1
  15. data/lib/mws/sellers.rb +40 -1
  16. data/lib/mws/subscriptions.rb +175 -1
  17. data/lib/peddler/client.rb +77 -37
  18. data/lib/peddler/csv_parser.rb +42 -0
  19. data/lib/peddler/operation.rb +44 -0
  20. data/lib/peddler/parser.rb +21 -0
  21. data/lib/peddler/structured_list.rb +22 -0
  22. data/lib/peddler/version.rb +1 -1
  23. data/lib/peddler/xml_parser.rb +25 -0
  24. data/lib/peddler.rb +2 -0
  25. data/test/helper.rb +1 -1
  26. data/test/integration/test_feeds.rb +18 -0
  27. data/test/integration/test_orders.rb +22 -0
  28. data/test/integration/test_products.rb +53 -0
  29. data/test/integration/test_reports.rb +47 -0
  30. data/test/integration/test_sellers.rb +18 -0
  31. data/test/integration/test_subscriptions.rb +26 -0
  32. data/test/integration_helper.rb +41 -8
  33. data/test/mws.yml +32 -0
  34. data/test/mws.yml.example +4 -0
  35. data/test/unit/peddler/test_client.rb +97 -0
  36. data/test/unit/peddler/test_csv_parser.rb +24 -0
  37. data/test/unit/peddler/test_operation.rb +34 -0
  38. data/test/{peddler/request → unit/peddler}/test_structured_list.rb +5 -5
  39. data/test/unit/peddler/test_xml_parser.rb +19 -0
  40. data/test/{test_peddler.rb → unit/test_peddler.rb} +2 -2
  41. data/test/vcr_cassettes/Feeds.yml +695 -0
  42. data/test/vcr_cassettes/Orders.yml +29855 -0
  43. data/test/vcr_cassettes/Products.yml +8597 -0
  44. data/test/vcr_cassettes/Reports.yml +1881 -0
  45. data/test/vcr_cassettes/Sellers.yml +697 -0
  46. data/test/vcr_cassettes/Subscriptions.yml +1369 -0
  47. metadata +91 -297
  48. data/lib/mws/feeds/client.rb +0 -116
  49. data/lib/mws/feeds/parsers/feed.rb +0 -14
  50. data/lib/mws/feeds/parsers/feed_submission_count.rb +0 -10
  51. data/lib/mws/feeds/parsers/feed_submission_info.rb +0 -25
  52. data/lib/mws/feeds/parsers/feed_submission_list.rb +0 -23
  53. data/lib/mws/feeds/parsers/feed_submission_result.rb +0 -10
  54. data/lib/mws/feeds/parsers/feed_submissions.rb +0 -18
  55. data/lib/mws/feeds/requests/feed.rb +0 -38
  56. data/lib/mws/feeds/requests/feed_submission_count.rb +0 -20
  57. data/lib/mws/feeds/requests/feed_submission_list.rb +0 -30
  58. data/lib/mws/feeds/requests/feed_submission_result.rb +0 -18
  59. data/lib/mws/feeds/requests/feed_submissions.rb +0 -20
  60. data/lib/mws/fulfillment_inbound_shipment/client.rb +0 -7
  61. data/lib/mws/fulfillment_inventory/client.rb +0 -7
  62. data/lib/mws/fulfillment_outbound_shipment/client.rb +0 -7
  63. data/lib/mws/off_amazon_payments/client.rb +0 -7
  64. data/lib/mws/orders/client.rb +0 -98
  65. data/lib/mws/orders/parsers/invoice_data.rb +0 -25
  66. data/lib/mws/orders/parsers/order.rb +0 -113
  67. data/lib/mws/orders/parsers/order_item.rb +0 -110
  68. data/lib/mws/orders/parsers/order_items.rb +0 -23
  69. data/lib/mws/orders/parsers/orders.rb +0 -23
  70. data/lib/mws/orders/parsers/payment_execution_detail.rb +0 -20
  71. data/lib/mws/orders/parsers/payment_execution_detail_item.rb +0 -17
  72. data/lib/mws/orders/parsers/service_status.rb +0 -36
  73. data/lib/mws/orders/parsers/service_status_message.rb +0 -17
  74. data/lib/mws/orders/parsers/shipping_address.rb +0 -37
  75. data/lib/mws/orders/requests/order_items.rb +0 -28
  76. data/lib/mws/orders/requests/orders.rb +0 -41
  77. data/lib/mws/orders/requests/service_status.rb +0 -15
  78. data/lib/mws/products/client.rb +0 -7
  79. data/lib/mws/recommendations/client.rb +0 -7
  80. data/lib/mws/reports/client.rb +0 -249
  81. data/lib/mws/reports/parsers/report.rb +0 -10
  82. data/lib/mws/reports/parsers/report_acknowledgements.rb +0 -20
  83. data/lib/mws/reports/parsers/report_count.rb +0 -10
  84. data/lib/mws/reports/parsers/report_info.rb +0 -29
  85. data/lib/mws/reports/parsers/report_list.rb +0 -23
  86. data/lib/mws/reports/parsers/report_request.rb +0 -14
  87. data/lib/mws/reports/parsers/report_request_count.rb +0 -10
  88. data/lib/mws/reports/parsers/report_request_info.rb +0 -49
  89. data/lib/mws/reports/parsers/report_request_list.rb +0 -23
  90. data/lib/mws/reports/parsers/report_requests.rb +0 -18
  91. data/lib/mws/reports/parsers/report_schedule.rb +0 -21
  92. data/lib/mws/reports/parsers/report_schedule_count.rb +0 -10
  93. data/lib/mws/reports/parsers/report_schedule_list.rb +0 -23
  94. data/lib/mws/reports/parsers/report_scheduler.rb +0 -19
  95. data/lib/mws/reports/requests/report.rb +0 -18
  96. data/lib/mws/reports/requests/report_acknowledgements.rb +0 -27
  97. data/lib/mws/reports/requests/report_count.rb +0 -20
  98. data/lib/mws/reports/requests/report_list.rb +0 -30
  99. data/lib/mws/reports/requests/report_request.rb +0 -21
  100. data/lib/mws/reports/requests/report_request_count.rb +0 -20
  101. data/lib/mws/reports/requests/report_request_list.rb +0 -30
  102. data/lib/mws/reports/requests/report_requests.rb +0 -20
  103. data/lib/mws/reports/requests/report_schedule_count.rb +0 -19
  104. data/lib/mws/reports/requests/report_schedule_list.rb +0 -23
  105. data/lib/mws/reports/requests/report_scheduler.rb +0 -29
  106. data/lib/mws/sellers/client.rb +0 -53
  107. data/lib/mws/sellers/parsers/marketplace.rb +0 -33
  108. data/lib/mws/sellers/parsers/marketplace_participations.rb +0 -32
  109. data/lib/mws/sellers/parsers/participation.rb +0 -21
  110. data/lib/mws/sellers/parsers/service_status.rb +0 -36
  111. data/lib/mws/sellers/parsers/service_status_message.rb +0 -17
  112. data/lib/mws/sellers/requests/marketplace_participations.rb +0 -27
  113. data/lib/mws/sellers/requests/service_status.rb +0 -15
  114. data/lib/mws/subscriptions/client.rb +0 -7
  115. data/lib/peddler/parsers/base.rb +0 -15
  116. data/lib/peddler/parsers/collection.rb +0 -23
  117. data/lib/peddler/parsers/counter.rb +0 -13
  118. data/lib/peddler/parsers/model.rb +0 -42
  119. data/lib/peddler/parsers/text.rb +0 -8
  120. data/lib/peddler/parsers/tokenable.rb +0 -13
  121. data/lib/peddler/parsers/xml.rb +0 -30
  122. data/lib/peddler/request/parameters.rb +0 -57
  123. data/lib/peddler/request/structured_list.rb +0 -48
  124. data/lib/peddler/request.rb +0 -52
  125. data/lib/peddler/response/base.rb +0 -0
  126. data/lib/peddler/response/payload/base.rb +0 -0
  127. data/lib/peddler/response/payload/csv.rb +0 -0
  128. data/lib/peddler/response/payload/xml.rb +0 -0
  129. data/lib/peddler/response.rb +0 -27
  130. data/test/fixtures/feeds/feed_submission.xml +0 -14
  131. data/test/fixtures/feeds/feed_submission_count.xml +0 -9
  132. data/test/fixtures/feeds/feed_submission_list.xml +0 -17
  133. data/test/fixtures/feeds/feed_submissions.xml +0 -15
  134. data/test/fixtures/mws.yml +0 -12
  135. data/test/fixtures/mws.yml.example +0 -4
  136. data/test/fixtures/orders/order_items.xml +0 -83
  137. data/test/fixtures/orders/orders.xml +0 -109
  138. data/test/fixtures/orders/service_status.xml +0 -19
  139. data/test/fixtures/reports/report.xml +0 -8
  140. data/test/fixtures/reports/report_acknowledgements.xml +0 -18
  141. data/test/fixtures/reports/report_count.xml +0 -9
  142. data/test/fixtures/reports/report_list.xml +0 -17
  143. data/test/fixtures/reports/report_request_count.xml +0 -9
  144. data/test/fixtures/reports/report_request_list.xml +0 -24
  145. data/test/fixtures/reports/report_requests.xml +0 -19
  146. data/test/fixtures/reports/report_schedule_count.xml +0 -10
  147. data/test/fixtures/reports/report_schedule_list.xml +0 -16
  148. data/test/fixtures/reports/report_scheduler.xml +0 -15
  149. data/test/fixtures/sellers/market_participations.xml +0 -27
  150. data/test/fixtures/sellers/service_status.xml +0 -9
  151. data/test/integration/feeds/test_feed_submission_count.rb +0 -13
  152. data/test/integration/feeds/test_feed_submission_list.rb +0 -17
  153. data/test/integration/feeds/test_feed_submission_result.rb +0 -15
  154. data/test/integration/orders/test_order_items.rb +0 -19
  155. data/test/integration/orders/test_orders.rb +0 -23
  156. data/test/integration/orders/test_service_status.rb +0 -12
  157. data/test/integration/reports/test_report.rb +0 -15
  158. data/test/integration/reports/test_report_count.rb +0 -13
  159. data/test/integration/reports/test_report_list.rb +0 -17
  160. data/test/integration/reports/test_report_request_count.rb +0 -13
  161. data/test/integration/reports/test_report_request_list.rb +0 -17
  162. data/test/integration/reports/test_report_schedule_count.rb +0 -13
  163. data/test/integration/reports/test_report_schedule_list.rb +0 -13
  164. data/test/integration/reports/test_report_scheduler.rb +0 -16
  165. data/test/integration/sellers/test_marketplace_participations.rb +0 -13
  166. data/test/integration/sellers/test_service_status.rb +0 -12
  167. data/test/mws/feeds/parsers/test_feed.rb +0 -13
  168. data/test/mws/feeds/parsers/test_feed_submission_count.rb +0 -13
  169. data/test/mws/feeds/parsers/test_feed_submission_info.rb +0 -25
  170. data/test/mws/feeds/parsers/test_feed_submission_list.rb +0 -18
  171. data/test/mws/feeds/parsers/test_feed_submission_result.rb +0 -13
  172. data/test/mws/feeds/parsers/test_feed_submissions.rb +0 -17
  173. data/test/mws/feeds/requests/test_feed.rb +0 -63
  174. data/test/mws/feeds/requests/test_feed_submission_count.rb +0 -23
  175. data/test/mws/feeds/requests/test_feed_submission_list.rb +0 -37
  176. data/test/mws/feeds/requests/test_feed_submissions.rb +0 -29
  177. data/test/mws/orders/parsers/test_order.rb +0 -86
  178. data/test/mws/orders/parsers/test_order_item.rb +0 -69
  179. data/test/mws/orders/parsers/test_order_items.rb +0 -18
  180. data/test/mws/orders/parsers/test_orders.rb +0 -18
  181. data/test/mws/orders/parsers/test_payment_execution_detail.rb +0 -14
  182. data/test/mws/orders/parsers/test_payment_execution_detail_item.rb +0 -17
  183. data/test/mws/orders/parsers/test_service_status.rb +0 -39
  184. data/test/mws/orders/parsers/test_service_status_message.rb +0 -17
  185. data/test/mws/orders/parsers/test_shipping_address.rb +0 -36
  186. data/test/mws/orders/requests/test_order_items.rb +0 -36
  187. data/test/mws/orders/requests/test_orders.rb +0 -46
  188. data/test/mws/orders/requests/test_service_status.rb +0 -25
  189. data/test/mws/reports/parsers/test_report_acknowledgments.rb +0 -14
  190. data/test/mws/reports/parsers/test_report_count.rb +0 -13
  191. data/test/mws/reports/parsers/test_report_info.rb +0 -29
  192. data/test/mws/reports/parsers/test_report_list.rb +0 -18
  193. data/test/mws/reports/parsers/test_report_request.rb +0 -13
  194. data/test/mws/reports/parsers/test_report_request_count.rb +0 -13
  195. data/test/mws/reports/parsers/test_report_request_info.rb +0 -49
  196. data/test/mws/reports/parsers/test_report_request_list.rb +0 -18
  197. data/test/mws/reports/parsers/test_report_requests.rb +0 -17
  198. data/test/mws/reports/parsers/test_report_schedule_count.rb +0 -13
  199. data/test/mws/reports/parsers/test_report_schedule_list.rb +0 -18
  200. data/test/mws/reports/parsers/test_report_scheduler.rb +0 -17
  201. data/test/mws/reports/requests/test_acknowledgements.rb +0 -36
  202. data/test/mws/reports/requests/test_report_count.rb +0 -23
  203. data/test/mws/reports/requests/test_report_list.rb +0 -39
  204. data/test/mws/reports/requests/test_report_request.rb +0 -31
  205. data/test/mws/reports/requests/test_report_request_count.rb +0 -23
  206. data/test/mws/reports/requests/test_report_request_list.rb +0 -44
  207. data/test/mws/reports/requests/test_report_requests.rb +0 -29
  208. data/test/mws/reports/requests/test_report_schedule_count.rb +0 -22
  209. data/test/mws/reports/requests/test_report_schedule_list.rb +0 -36
  210. data/test/mws/reports/requests/test_report_scheduler.rb +0 -33
  211. data/test/mws/sellers/parsers/test_market_participations.rb +0 -19
  212. data/test/mws/sellers/parsers/test_service_status.rb +0 -35
  213. data/test/mws/sellers/requests/test_marketplace_participation_list.rb +0 -39
  214. data/test/mws/sellers/requests/test_service_status.rb +0 -25
  215. data/test/parser_helper.rb +0 -11
  216. data/test/peddler/parsers/test_collection.rb +0 -8
  217. data/test/peddler/parsers/test_model.rb +0 -70
  218. data/test/peddler/request/test_parameters.rb +0 -35
  219. data/test/peddler/test_client.rb +0 -42
  220. data/test/request_helper.rb +0 -20
@@ -1,17 +0,0 @@
1
- require 'peddler/parsers/model'
2
-
3
- module MWS
4
- module Orders
5
- module Parsers
6
- class ServiceStatusMessage < ::Peddler::Parsers::Model
7
- value :locale do
8
- text_at_xpath('Locale')
9
- end
10
-
11
- value :text do
12
- text_at_xpath('Text')
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,37 +0,0 @@
1
- require 'peddler/parsers/model'
2
-
3
- module MWS
4
- module Orders
5
- module Parsers
6
- class ShippingAddress < ::Peddler::Parsers::Model
7
- value :name do
8
- text_at_xpath('Name')
9
- end
10
-
11
- value :address_lines do
12
- 1.upto(3).map { |i| text_at_xpath("AddressLine#{i}") }.compact
13
- end
14
-
15
- value :city do
16
- text_at_xpath('City')
17
- end
18
-
19
- value :state_or_region do
20
- text_at_xpath('StateOrRegion')
21
- end
22
-
23
- value :postal_code do
24
- text_at_xpath('PostalCode')
25
- end
26
-
27
- value :country_code do
28
- text_at_xpath('CountryCode')
29
- end
30
-
31
- value :phone do
32
- text_at_xpath('Phone')
33
- end
34
- end
35
- end
36
- end
37
- end
@@ -1,28 +0,0 @@
1
- require 'peddler/request'
2
- require 'mws/orders/parsers/order_items'
3
-
4
- module MWS
5
- module Orders
6
- module Requests
7
- class OrderItems < ::Peddler::Request
8
- def list(amazon_order_id)
9
- parameters(:list_order_items)
10
- .update(amazon_order_id: amazon_order_id)
11
- .camelize_keys!
12
-
13
- execute
14
- end
15
-
16
- def list_by_next_token(token = next_token)
17
- return unless token
18
-
19
- parameters(:list_order_items_by_next_token)
20
- .update(next_token: token)
21
- .camelize_keys!
22
-
23
- execute
24
- end
25
- end
26
- end
27
- end
28
- end
@@ -1,41 +0,0 @@
1
- require 'peddler/request'
2
- require 'mws/orders/parsers/orders'
3
-
4
- module MWS
5
- module Orders
6
- module Requests
7
- class Orders < ::Peddler::Request
8
- def get(*amazon_order_ids)
9
- parameters(:get_order)
10
- .update(amazon_order_id: amazon_order_ids)
11
- .format_structured_lists!
12
- .camelize_keys!
13
-
14
- execute
15
- end
16
-
17
- def list(options)
18
- options[:marketplace_id] ||= client.marketplace_id
19
-
20
- parameters(:list_orders)
21
- .update(options)
22
- .timestamp!
23
- .format_structured_lists!
24
- .camelize_keys!
25
-
26
- execute
27
- end
28
-
29
- def list_by_next_token(token = next_token)
30
- return unless token
31
-
32
- parameters(:list_orders_by_next_token)
33
- .update(next_token: token)
34
- .camelize_keys!
35
-
36
- execute
37
- end
38
- end
39
- end
40
- end
41
- end
@@ -1,15 +0,0 @@
1
- require 'peddler/request'
2
- require 'mws/orders/parsers/service_status'
3
-
4
- module MWS
5
- module Orders
6
- module Requests
7
- class ServiceStatus < ::Peddler::Request
8
- def get
9
- parameters(:get_service_status)
10
- execute
11
- end
12
- end
13
- end
14
- end
15
- end
@@ -1,7 +0,0 @@
1
- module MWS
2
- module Products
3
- class Client < ::Peddler::Client
4
- path 'Products/2011-10-01'
5
- end
6
- end
7
- end
@@ -1,7 +0,0 @@
1
- module MWS
2
- module Recommendations
3
- class Client < ::Peddler::Client
4
- path 'Recommendations/2013-04-01'
5
- end
6
- end
7
- end
@@ -1,249 +0,0 @@
1
- require 'mws/reports/requests/report_request'
2
- require 'mws/reports/requests/report_request_list'
3
- require 'mws/reports/requests/report_request_count'
4
- require 'mws/reports/requests/report_requests'
5
- require 'mws/reports/requests/report_list'
6
- require 'mws/reports/requests/report_count'
7
- require 'mws/reports/requests/report'
8
- require 'mws/reports/requests/report_scheduler'
9
- require 'mws/reports/requests/report_schedule_list'
10
- require 'mws/reports/requests/report_schedule_count'
11
- require 'mws/reports/requests/report_acknowledgements'
12
- require 'peddler/client'
13
-
14
- module MWS
15
- module Reports
16
- # The Reports API lets you request reports about your inventory and orders.
17
- class Client < ::Peddler::Client
18
- # Public: Create a report request.
19
- #
20
- # type - The String type of report to request.
21
- # options - The Hash query parameters used to narrow the list. Refer to
22
- # the MWS Reports API for available parameters.
23
- #
24
- # Examples
25
- #
26
- # client.request_report('_GET_ORDERS_DATA_')
27
- #
28
- # Returns the Report Request Info.
29
- def_delegator :report_request, :submit, :request_report
30
-
31
- # Public: Get a list of report requests submitted during a specified time
32
- # frame.
33
- #
34
- # options - The Hash query parameters used to narrow the list. Refer to
35
- # the MWS Reports API for available parameters.
36
- #
37
- # Examples
38
- #
39
- # client.get_report_request_list(submitted_from_date: 1.week.ago)
40
- #
41
- # Returns an enumerable Report Request List.
42
- def_delegator :report_request_list, :get, :get_report_request_list
43
-
44
- # Public: List the next page of the list of report requests.
45
- #
46
- # token - A String token (default: The token returned in the last
47
- # request).
48
- #
49
- # Examples
50
- #
51
- # client.get_report_request_list_by_next_token
52
- #
53
- # Returns an enumerable Report Request List.
54
- def_delegator :report_request_list, :get_by_next_token, :get_report_request_list_by_next_token
55
-
56
- # Public: Get a count of the reports requested during a specified time
57
- # frame.
58
- #
59
- # options - The Hash query parameters used to narrow the list. Refer to
60
- # the MWS Reports API for available parameters.
61
- #
62
- # Examples
63
- #
64
- # client.get_report_request_count(submitted_from_date: 1.week.ago)
65
- #
66
- # Returns the Report Request Count.
67
- def_delegator :report_request_count, :get, :get_report_request_count
68
-
69
- # Public: Cancel one or more report requests.
70
- #
71
- # options - The Hash query parameters used to narrow the list. Refer to
72
- # the MWS Reports API for available parameters.
73
- #
74
- # Examples
75
- #
76
- # client.cancel_report_requests(submitted_to_date: 1.hour.ago)
77
- #
78
- # Returns the canceled report requests and their count.
79
- def_delegator :report_requests, :cancel, :cancel_report_requests
80
-
81
- # Public: Get a list of reports created during a specified time frame.
82
- #
83
- # options - The Hash query parameters used to narrow the list. Refer to
84
- # the MWS Reports API for available parameters.
85
- #
86
- # Examples
87
- #
88
- # client.get_report_list
89
- #
90
- # Returns an enumerable Report List.
91
- def_delegator :report_list, :get, :get_report_list
92
-
93
- # Public: List the next page of the list of reports.
94
- #
95
- # token - A String token (default: The token returned in the last
96
- # request).
97
- #
98
- # Examples
99
- #
100
- # client.get_report_list_by_next_token
101
- #
102
- # Returns an enumerable Report List.
103
- def_delegator :report_list, :get_by_next_token, :get_report_list_by_next_token
104
-
105
- # Public: Get a count of the reports created during a specified time
106
- # frame, with a status of _DONE_ and that are available for download.
107
- #
108
- # options - The Hash query parameters used to narrow the list. Refer to
109
- # the MWS Reports API for available parameters.
110
- #
111
- # Examples
112
- #
113
- # client.get_report_count
114
- #
115
- # Returns a Report Count.
116
- def_delegator :report_count, :get, :get_report_count
117
-
118
- # Public: Get the contents of a report and the Content-MD5 header for the
119
- # returned report body.
120
- #
121
- # id - The String generated report id.
122
- #
123
- # Examples
124
- #
125
- # client.get_report('123456')
126
- #
127
- # Returns a Report.
128
- def_delegator :report, :get, :get_report
129
-
130
- # Public: Create, update, or delete a report request schedule.
131
- #
132
- # type - The String report type.
133
- # schedule - The String value that indicates how often a report
134
- # request should be created.
135
- # scheduled_at - The Time when the next report request is scheduled to be
136
- # submitted (default: Now).
137
- #
138
- # Examples
139
- #
140
- # client.manage_report_schedule('_GET_ORDERS_DATA_', '_1_HOUR_')
141
- #
142
- # Returns a Report Schedule.
143
- def_delegator :report_scheduler, :manage, :manage_report_schedule
144
-
145
- # Public: Delete a report request schedule.
146
- #
147
- # type - The String report type.
148
- #
149
- # Examples
150
- #
151
- # client.delete_report_schedule('_GET_ORDERS_DATA_')
152
- #
153
- # Returns a Report Schedule.
154
- def_delegator :report_scheduler, :delete, :delete_report_schedule
155
-
156
- # Public: Get a list of order report requests that are scheduled to be
157
- # submitted to MWS for processing.
158
- #
159
- # types - One or more String report types (default: all report types).
160
- #
161
- # Examples
162
- #
163
- # client.get_report_schedule_list
164
- #
165
- # Returns a Report Schedule List.
166
- def_delegator :report_schedule_list, :get, :get_report_schedule_list
167
-
168
- # Public: Get a count of order report requests that are scheduled to be
169
- # submitted to MWS.
170
- #
171
- # types - One or more String report types (default: all report types).
172
- #
173
- # Examples
174
- #
175
- # client.get_report_schedule_count
176
- #
177
- # Returns the Report Schedule Count.
178
- def_delegator :report_schedule_count, :get, :get_report_schedule_count
179
-
180
- # Public: Update acknowledged status of one or more reports to true.
181
- #
182
- # ids - One or more Integer report ids.
183
- #
184
- # Examples
185
- #
186
- # client.acknowledge_reports(123)
187
- #
188
- # Returns Report Acknowledgements.
189
- def_delegator :report_acknowledgements, :acknowledge, :acknowledge_reports
190
-
191
- # Public: Update acknowledged status of one or more reports to false.
192
- #
193
- # ids - One or more Integer report ids.
194
- #
195
- # Examples
196
- #
197
- # client.unacknowledge_reports(123)
198
- #
199
- # Returns Report Acknowledgements.
200
- def_delegator :report_acknowledgements, :unacknowledge, :unacknowledge_reports
201
-
202
- private
203
-
204
- def report_request
205
- @report_request ||= Requests::ReportRequest.new(self)
206
- end
207
-
208
- def report_request_list
209
- @report_request_list ||= Requests::ReportRequestList.new(self)
210
- end
211
-
212
- def report_request_count
213
- @report_request_count ||= Requests::ReportRequestCount.new(self)
214
- end
215
-
216
- def report_requests
217
- @report_requests ||= Requests::ReportRequests.new(self)
218
- end
219
-
220
- def report_list
221
- @report_list ||= Requests::ReportList.new(self)
222
- end
223
-
224
- def report_count
225
- @report_count ||= Requests::ReportCount.new(self)
226
- end
227
-
228
- def report
229
- @report ||= Requests::Report.new(self)
230
- end
231
-
232
- def report_scheduler
233
- @report_scheduler ||= Requests::ReportScheduler.new(self)
234
- end
235
-
236
- def report_schedule_list
237
- @report_schedule_list ||= Requests::ReportScheduleList.new(self)
238
- end
239
-
240
- def report_schedule_count
241
- @report_schedule_count ||= Requests::ReportScheduleCount.new(self)
242
- end
243
-
244
- def report_acknowledgements
245
- @report_acknowledgements ||= Requests::ReportAcknowledgements.new(self)
246
- end
247
- end
248
- end
249
- end
@@ -1,10 +0,0 @@
1
- require 'peddler/parsers/text'
2
-
3
- module MWS
4
- module Reports
5
- module Parsers
6
- class Report < ::Peddler::Parsers::Text
7
- end
8
- end
9
- end
10
- end
@@ -1,20 +0,0 @@
1
- require 'peddler/parsers/collection'
2
- require 'mws/reports/parsers/report_info'
3
-
4
- module MWS
5
- module Reports
6
- module Parsers
7
- class ReportAcknowledgements < ::Peddler::Parsers::Collection
8
- def each(&blk)
9
- report_info_nodes.each { |node| yield ReportInfo.new(node) }
10
- end
11
-
12
- private
13
-
14
- def report_info_nodes
15
- xpath('ReportInfo')
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,10 +0,0 @@
1
- require 'peddler/parsers/counter'
2
-
3
- module MWS
4
- module Reports
5
- module Parsers
6
- class ReportCount < ::Peddler::Parsers::Counter
7
- end
8
- end
9
- end
10
- end
@@ -1,29 +0,0 @@
1
- require 'peddler/parsers/model'
2
-
3
- module MWS
4
- module Reports
5
- module Parsers
6
- class ReportInfo < ::Peddler::Parsers::Model
7
- value :id do
8
- text_at_xpath('ReportId')
9
- end
10
-
11
- value :type do
12
- text_at_xpath('ReportType')
13
- end
14
-
15
- value :request_id do
16
- text_at_xpath('ReportRequestId')
17
- end
18
-
19
- value :available_at do
20
- time_at_xpath('AvailableDate')
21
- end
22
-
23
- value :acknowledged? do
24
- boolean_at_xpath('Acknowledged')
25
- end
26
- end
27
- end
28
- end
29
- end
@@ -1,23 +0,0 @@
1
- require 'peddler/parsers/collection'
2
- require 'mws/reports/parsers/report_info'
3
- require 'peddler/parsers/tokenable'
4
-
5
- module MWS
6
- module Reports
7
- module Parsers
8
- class ReportList < ::Peddler::Parsers::Collection
9
- include ::Peddler::Parsers::Tokenable
10
-
11
- def each(&blk)
12
- report_info_nodes.each { |node| yield ReportInfo.new(node) }
13
- end
14
-
15
- private
16
-
17
- def report_info_nodes
18
- xpath('ReportInfo')
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,14 +0,0 @@
1
- require 'peddler/parsers/model'
2
- require 'mws/reports/parsers/report_request_info'
3
-
4
- module MWS
5
- module Reports
6
- module Parsers
7
- class ReportRequest < Peddler::Parsers::Model
8
- value :info do
9
- ReportRequestInfo.new(at_xpath('ReportRequestInfo'))
10
- end
11
- end
12
- end
13
- end
14
- end
@@ -1,10 +0,0 @@
1
- require 'peddler/parsers/counter'
2
-
3
- module MWS
4
- module Reports
5
- module Parsers
6
- class ReportRequestCount < ::Peddler::Parsers::Counter
7
- end
8
- end
9
- end
10
- end
@@ -1,49 +0,0 @@
1
- require 'peddler/parsers/model'
2
-
3
- module MWS
4
- module Reports
5
- module Parsers
6
- class ReportRequestInfo < ::Peddler::Parsers::Model
7
- value :id do
8
- text_at_xpath('ReportRequestId')
9
- end
10
-
11
- value :type do
12
- text_at_xpath('ReportType')
13
- end
14
-
15
- value :started_at do
16
- time_at_xpath('StartDate')
17
- end
18
-
19
- value :ended_at do
20
- time_at_xpath('EndDate')
21
- end
22
-
23
- value :scheduled? do
24
- boolean_at_xpath('Scheduled')
25
- end
26
-
27
- value :submitted_at do
28
- time_at_xpath('SubmittedDate')
29
- end
30
-
31
- value :processing_status do
32
- text_at_xpath('ReportProcessingStatus')
33
- end
34
-
35
- value :generated_report_id do
36
- text_at_xpath('GeneratedReportId')
37
- end
38
-
39
- value :started_processing_at do
40
- time_at_xpath('StartedProcessingDate')
41
- end
42
-
43
- value :completed_at do
44
- time_at_xpath('CompletedDate')
45
- end
46
- end
47
- end
48
- end
49
- end
@@ -1,23 +0,0 @@
1
- require 'peddler/parsers/collection'
2
- require 'mws/reports/parsers/report_request_info'
3
- require 'peddler/parsers/tokenable'
4
-
5
- module MWS
6
- module Reports
7
- module Parsers
8
- class ReportRequestList < ::Peddler::Parsers::Collection
9
- include ::Peddler::Parsers::Tokenable
10
-
11
- def each(&blk)
12
- report_request_info_nodes.each { |node| yield ReportRequestInfo.new(node) }
13
- end
14
-
15
- private
16
-
17
- def report_request_info_nodes
18
- xpath('ReportRequestInfo')
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,18 +0,0 @@
1
- require 'peddler/parsers/model'
2
- require 'mws/reports/parsers/report_request_info'
3
-
4
- module MWS
5
- module Reports
6
- module Parsers
7
- class ReportRequests < ::Peddler::Parsers::Model
8
- value :count do
9
- integer_at_xpath('Count')
10
- end
11
-
12
- def report_request_infos
13
- xpath('ReportRequestInfo').map { |node| ReportRequestInfo.new(node) }
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,21 +0,0 @@
1
- require 'peddler/parsers/model'
2
-
3
- module MWS
4
- module Reports
5
- module Parsers
6
- class ReportSchedule < ::Peddler::Parsers::Model
7
- value :type do
8
- text_at_xpath('ReportType')
9
- end
10
-
11
- value :schedule do
12
- text_at_xpath('Schedule')
13
- end
14
-
15
- value :scheduled_at do
16
- time_at_xpath('ScheduledDate')
17
- end
18
- end
19
- end
20
- end
21
- end
@@ -1,10 +0,0 @@
1
- require 'peddler/parsers/counter'
2
-
3
- module MWS
4
- module Reports
5
- module Parsers
6
- class ReportScheduleCount < ::Peddler::Parsers::Counter
7
- end
8
- end
9
- end
10
- end
@@ -1,23 +0,0 @@
1
- require 'peddler/parsers/collection'
2
- require 'mws/reports/parsers/report_schedule'
3
- require 'peddler/parsers/tokenable'
4
-
5
- module MWS
6
- module Reports
7
- module Parsers
8
- class ReportScheduleList < ::Peddler::Parsers::Collection
9
- include ::Peddler::Parsers::Tokenable
10
-
11
- def each(&blk)
12
- report_schedule_nodes.each { |node| yield ReportSchedule.new(node) }
13
- end
14
-
15
- private
16
-
17
- def report_schedule_nodes
18
- xpath('ReportSchedule')
19
- end
20
- end
21
- end
22
- end
23
- end