peddler 2.3.0 → 2.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 15634f7228f32bf92ba757d456f66a8c42e46082c0e516a65cf8e2b5e53c7ef6
4
- data.tar.gz: bc20e8700266c6207f738ca7bc6fb2e9927eb07a6a2e1488f3011b062753231b
3
+ metadata.gz: 974b7b1222d7639db4e0b62033aa77d2797f26cabfd7beedf0efed3672d64531
4
+ data.tar.gz: 9cfcbb76b80a31adba8ef3093cd25a1d38728277a2a9ebac0a7b9b0d68913b83
5
5
  SHA512:
6
- metadata.gz: 307a816a9baaa8d1309f6f941e1a6ffa56010dc94a3efa237c32db8d0c9bd7f30765434ef1206b12048f938e676e1870d7815ccbe54b09383b7ac95979809b33
7
- data.tar.gz: 9e2275da4ce370ae82a4d70f2080a676c30dcc7800f9323fdbd924048491ff45bf05ab33ce10dbc1248b8a925710c1b6d287cd12791d478900fca391f0fdbdbe
6
+ metadata.gz: 51dda92daf568674c3d3a4a0c7f378ca904e34f57a96c868535c2e5b91cf736e4d6c41a70093994518be41541f93bd4e0bc40db512cacf6647a9c9b42dc89500
7
+ data.tar.gz: 53898049e5cae02ba404e18540d2c57b8ee0654206cfbf8aae633e0e0887c291373ca8c60818ed53b887d643da3b27588a3c48b186263eef52816efe4eed44ee
@@ -47,7 +47,10 @@ module Peddler
47
47
  match_data = headers['Content-Type']&.match(/charset=(.*);?/)
48
48
  return unless match_data
49
49
 
50
- Encoding.find(match_data[1])
50
+ string = match_data[1]
51
+ string = 'UTF-8' if string == 'UTF8'
52
+
53
+ Encoding.find(string)
51
54
  end
52
55
 
53
56
  # The max hourly request quota for the requested operation
@@ -64,6 +64,7 @@ module Peddler
64
64
  ['A1F83G8C2ARO7P', 'GB', 'mws-eu.amazonservices.com'],
65
65
  ['A21TJRUUN4KGV', 'IN', 'mws.amazonservices.in'],
66
66
  ['APJ6JRA9NG5V4', 'IT', 'mws-eu.amazonservices.com'],
67
+ ['A1805IZSGTT6HS', 'NL', 'mws-eu.amazonservices.com'],
67
68
  ['A17E79C6D8DWNP', 'SA', 'mws-eu.amazonservices.com'],
68
69
  ['A33AVAJ2PDY3EV', 'TR', 'mws-eu.amazonservices.com'],
69
70
  ['A19VAU5U5O7RUS', 'SG', 'mws-fe.amazonservices.com'],
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Peddler
4
- VERSION = '2.3.0'
4
+ VERSION = '2.4.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: peddler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hakan Ensari
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-01-27 00:00:00.000000000 Z
11
+ date: 2020-04-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: excon
@@ -93,7 +93,6 @@ files:
93
93
  - lib/mws/subscriptions/client.rb
94
94
  - lib/peddler.rb
95
95
  - lib/peddler/client.rb
96
- - lib/peddler/content.rb
97
96
  - lib/peddler/errors/builder.rb
98
97
  - lib/peddler/errors/class_generator.rb
99
98
  - lib/peddler/errors/error.rb
@@ -101,7 +100,6 @@ files:
101
100
  - lib/peddler/flat_file_parser.rb
102
101
  - lib/peddler/headers.rb
103
102
  - lib/peddler/marketplace.rb
104
- - lib/peddler/mws.rb
105
103
  - lib/peddler/operation.rb
106
104
  - lib/peddler/parser.rb
107
105
  - lib/peddler/structured_list.rb
@@ -1,69 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Peddler
4
- # Parses content metadata provided in the headers of a response
5
- class Content
6
- # @!visibility private
7
- attr_reader :headers
8
-
9
- # @!visibility private
10
- def initialize(headers)
11
- @headers = headers.select { |key| key.start_with?('Content') }
12
- end
13
-
14
- # The size of the response body in bytes
15
- # @return [String, nil]
16
- def length
17
- return unless headers['Content-Length']
18
-
19
- headers['Content-Length'].to_i
20
- end
21
-
22
- # The MD5 digest of the response body
23
- # @return [String, nil]
24
- def md5
25
- headers['Content-MD5']
26
- end
27
-
28
- # The MIME type of the response
29
- # @return [String, nil]
30
- def media_type
31
- return unless headers['Content-Type']
32
-
33
- headers['Content-Type'].split(';').first
34
- end
35
-
36
- # The general category into which the MIME type falls
37
- # @return [String, nil]
38
- def type
39
- return unless media_type
40
-
41
- media_type.split('/').first
42
- end
43
-
44
- # The exact kind of data of the specified type the MIME type represents
45
- # @return [String, nil]
46
- def subtype
47
- return unless media_type
48
-
49
- media_type.split('/').last
50
- end
51
-
52
- # The character encoding of the response
53
- # @return [Encoding, nil]
54
- def charset
55
- match_data = headers['Content-Type']&.match(/charset=(.*);?/)
56
- return unless match_data
57
-
58
- Encoding.find(match_data[1])
59
- end
60
-
61
- # Whether the response is an XML document
62
- # @return [Boolean, nil]
63
- def xml?
64
- return unless subtype
65
-
66
- subtype == 'xml'
67
- end
68
- end
69
- end
@@ -1,58 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Peddler
4
- # Parses MWS metadata provided in the headers of a response
5
- class MWS
6
- # @!visibility private
7
- attr_reader :headers
8
-
9
- # @!visibility private
10
- def initialize(headers)
11
- @headers = headers.select { |key| key.start_with?('x-mws') }
12
- end
13
-
14
- # The max hourly request quota for the requested operation
15
- # @return [Integer, nil]
16
- def quota_max
17
- return unless headers['x-mws-quota-max']
18
-
19
- headers['x-mws-quota-max'].to_i
20
- end
21
-
22
- # The remaining hourly request quota for the requested operation
23
- # @return [Integer, nil]
24
- def quota_remaining
25
- return unless headers['x-mws-quota-remaining']
26
-
27
- headers['x-mws-quota-remaining'].to_i
28
- end
29
-
30
- # When the hourly request quota for the requested operation resets
31
- # @return [Time, nil]
32
- def quota_resets_on
33
- return unless headers['x-mws-quota-resetsOn']
34
-
35
- Time.parse(headers['x-mws-quota-resetsOn'])
36
- end
37
-
38
- # The ID of the request
39
- # @return [String, nil]
40
- def request_id
41
- headers['x-mws-request-id']
42
- end
43
-
44
- # The timestamp of the request
45
- # @return [Time, nil]
46
- def timestamp
47
- return unless headers['x-mws-timestamp']
48
-
49
- Time.parse(headers['x-mws-timestamp'])
50
- end
51
-
52
- # The context of the response
53
- # @return [String, nil]
54
- def response_context
55
- headers['x-mws-response-context']
56
- end
57
- end
58
- end