google_map_services 0.1.0.0 → 0.1.0.1
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 +4 -4
- data/.ruby-version +1 -1
- data/Gemfile +1 -1
- data/google_maps_service.gemspec +4 -4
- data/lib/google_maps_service/client.rb +7 -5
- data/lib/google_maps_service/errors.rb +26 -0
- data/lib/google_maps_service/version.rb +1 -1
- metadata +10 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6fbd31e59c5a4cdb653e1fa83fa918fd7c8e94a937b43ce969d37bf30cd8c066
|
4
|
+
data.tar.gz: 2088ab0383ee7b9223ec97aff1068183523db31c40d7bd8d968d0dca8feb4e89
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 71f6638c7ff114ccbc646f36dfc36089968e253d7f818f0ef7904f601b6925239d9af3ea26bed281fea1afd9dfe87d7e1d21232cacb3b0ef4637f246e82739b4
|
7
|
+
data.tar.gz: fc057eb72acb106c90c736a795c5ba578104255f9794dca48e04a97da21c3c437222f68109792e61042fa9f1032da965301b26886b32c6973f6bcc5632a29ed2
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3.0.1
|
data/Gemfile
CHANGED
data/google_maps_service.gemspec
CHANGED
@@ -10,15 +10,15 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.email = ['edwardsamuel92@gmail.com', 'eng.a.abdelhamid@outlook.com']
|
11
11
|
|
12
12
|
spec.summary = %q{Ruby gem for Google Maps Web Service APIs }
|
13
|
-
spec.homepage = %q{https://github.com/go-illa/google-maps-services-ruby}
|
13
|
+
spec.homepage = %q{https://github.com/go-illa/google-maps-services-ruby/tree/google-map-services-gem}
|
14
14
|
spec.license = 'Apache-2.0'
|
15
|
-
spec.required_ruby_version = '>= 2.
|
15
|
+
spec.required_ruby_version = '>= 2.6.0'
|
16
16
|
|
17
17
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
18
18
|
spec.require_paths = ['lib']
|
19
19
|
# spec.has_rdoc = 'yard'
|
20
20
|
|
21
21
|
spec.add_runtime_dependency 'multi_json', '~> 1.12'
|
22
|
-
spec.add_runtime_dependency 'faraday', '
|
23
|
-
spec.add_runtime_dependency 'retriable', '~> 3.
|
22
|
+
spec.add_runtime_dependency 'faraday', '~> 2.0'
|
23
|
+
spec.add_runtime_dependency 'retriable', '~> 3.1'
|
24
24
|
end
|
@@ -255,11 +255,13 @@ module GoogleMapsService
|
|
255
255
|
case response.status
|
256
256
|
when 200..300
|
257
257
|
# Do-nothing
|
258
|
-
when 301
|
259
|
-
raise GoogleMapsService::Error::RedirectError.new(response),
|
260
|
-
|
261
|
-
|
262
|
-
|
258
|
+
when 301...308
|
259
|
+
raise GoogleMapsService::Error::RedirectError.new(response),
|
260
|
+
(GoogleMapsService::Error::RedirectError::ERRORS_3XX[response.status.to_s] + sprintf('Redirect to %s', response.headers[:location]))
|
261
|
+
when 400...409,415,422,429
|
262
|
+
raise GoogleMapsService::Error::ClientError.new(response),
|
263
|
+
GoogleMapsService::Error::ClientError::ERRORS_4XX[response.status.to_s]
|
264
|
+
when 410...500
|
263
265
|
raise GoogleMapsService::Error::ClientError.new(response), 'Invalid request'
|
264
266
|
when 500..600
|
265
267
|
raise GoogleMapsService::Error::ServerError.new(response), 'Server error'
|
@@ -17,11 +17,37 @@ module GoogleMapsService
|
|
17
17
|
|
18
18
|
# The response redirects to another URL.
|
19
19
|
class RedirectError < BaseError
|
20
|
+
ERRORS_3XX = {
|
21
|
+
'300' => 'Multiple Choices',
|
22
|
+
'301' => 'Moved Permanently',
|
23
|
+
'302' => 'Found',
|
24
|
+
'303' => 'See Other',
|
25
|
+
'304' => 'Not Modified',
|
26
|
+
'305' => 'Use Proxy',
|
27
|
+
'306' => 'Switch Proxy',
|
28
|
+
'307' => 'Temporary Redirect',
|
29
|
+
'308' => 'Permanent Redirect'
|
30
|
+
}
|
20
31
|
end
|
21
32
|
|
22
33
|
# A 4xx class HTTP error occurred.
|
23
34
|
# The request is invalid and should not be retried without modification.
|
24
35
|
class ClientError < BaseError
|
36
|
+
ERRORS_4XX = {
|
37
|
+
'400' => 'Bad Request',
|
38
|
+
'401' => 'Unauthorized',
|
39
|
+
'402' => 'Payment Required',
|
40
|
+
'403' => 'Forbidden',
|
41
|
+
'404' => 'Not Found',
|
42
|
+
'405' => 'Method Not Allowed',
|
43
|
+
'406' => 'Not Acceptable',
|
44
|
+
'407' => 'Proxy Authentication Required',
|
45
|
+
'408' => 'Request Timeout',
|
46
|
+
'409' => 'Conflict',
|
47
|
+
'415' => 'Unsupported Media Type',
|
48
|
+
'422' => 'Unprocessable Entity',
|
49
|
+
'429' => 'Too Many Requests'
|
50
|
+
}
|
25
51
|
end
|
26
52
|
|
27
53
|
# A 5xx class HTTP error occurred.
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google_map_services
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.0.
|
4
|
+
version: 0.1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Edward Samuel Pasaribu
|
@@ -29,30 +29,30 @@ dependencies:
|
|
29
29
|
name: faraday
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- - "
|
32
|
+
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: '
|
34
|
+
version: '2.0'
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
|
-
- - "
|
39
|
+
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: '
|
41
|
+
version: '2.0'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: retriable
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: '3.
|
48
|
+
version: '3.1'
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: '3.
|
55
|
+
version: '3.1'
|
56
56
|
description:
|
57
57
|
email:
|
58
58
|
- edwardsamuel92@gmail.com
|
@@ -91,7 +91,7 @@ files:
|
|
91
91
|
- lib/google_maps_service/url.rb
|
92
92
|
- lib/google_maps_service/validator.rb
|
93
93
|
- lib/google_maps_service/version.rb
|
94
|
-
homepage: https://github.com/go-illa/google-maps-services-ruby
|
94
|
+
homepage: https://github.com/go-illa/google-maps-services-ruby/tree/google-map-services-gem
|
95
95
|
licenses:
|
96
96
|
- Apache-2.0
|
97
97
|
metadata: {}
|
@@ -103,14 +103,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
103
103
|
requirements:
|
104
104
|
- - ">="
|
105
105
|
- !ruby/object:Gem::Version
|
106
|
-
version: 2.
|
106
|
+
version: 2.6.0
|
107
107
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
108
108
|
requirements:
|
109
109
|
- - ">="
|
110
110
|
- !ruby/object:Gem::Version
|
111
111
|
version: '0'
|
112
112
|
requirements: []
|
113
|
-
rubygems_version: 3.
|
113
|
+
rubygems_version: 3.2.15
|
114
114
|
signing_key:
|
115
115
|
specification_version: 4
|
116
116
|
summary: Ruby gem for Google Maps Web Service APIs
|