google-cloud-core 1.0.0 → 1.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 +5 -5
- data/lib/google/cloud.rb +9 -8
- data/lib/google/cloud/core/version.rb +1 -1
- data/lib/google/cloud/credentials.rb +4 -0
- data/lib/google/cloud/errors.rb +113 -0
- metadata +4 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: e44ada22e203f330c8b70e746ce7b7fe79ff7a40587f993126f18438e18bebf1
|
4
|
+
data.tar.gz: a3eba190acf8259d8c9dd8c14ce8db08fa7f133a1c38c81958dac03cb74c3eeb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e230827b88d66edb003623e9955e522f5695ffd7a5d7b095bf678ae886a049014917511bfc4d79a23dfa5d16a6b64f445c985a8e57dae0298354b243a9cf3e36
|
7
|
+
data.tar.gz: 4248b6744703cae1c167d6fcfc59c69a0ca99d155a17b5a7deef3137c197b7e625382d7935dab26383a64649ef692f713a933528e3a79f46406dfb94b2d6d2e4
|
data/lib/google/cloud.rb
CHANGED
@@ -39,10 +39,11 @@ module Google
|
|
39
39
|
# For more information on connecting to Google Cloud see the [Authentication
|
40
40
|
# Guide](https://googlecloudplatform.github.io/google-cloud-ruby/#/docs/guides/authentication).
|
41
41
|
#
|
42
|
-
# @param [String]
|
42
|
+
# @param [String] project_id Project identifier for the service you are
|
43
43
|
# connecting to.
|
44
|
-
# @param [String, Hash]
|
45
|
-
#
|
44
|
+
# @param [String, Hash, Google::Auth::Credentials] credentials The path to
|
45
|
+
# the keyfile as a String, the contents of the keyfile as a Hash, or a
|
46
|
+
# Google::Auth::Credentials object.
|
46
47
|
# @param [Integer] retries Number of times to retry requests on server
|
47
48
|
# error. The default value is `3`. Optional.
|
48
49
|
# @param [Integer] timeout Default timeout to use in requests. Optional.
|
@@ -57,12 +58,12 @@ module Google
|
|
57
58
|
# pubsub = gcloud.pubsub
|
58
59
|
# storage = gcloud.storage
|
59
60
|
#
|
60
|
-
def self.new
|
61
|
+
def self.new project_id = nil, credentials = nil, retries: nil, timeout: nil
|
61
62
|
gcloud = Object.new
|
62
|
-
gcloud.instance_variable_set
|
63
|
-
gcloud.instance_variable_set
|
64
|
-
gcloud.instance_variable_set
|
65
|
-
gcloud.instance_variable_set
|
63
|
+
gcloud.instance_variable_set :@project, project_id
|
64
|
+
gcloud.instance_variable_set :@keyfile, credentials
|
65
|
+
gcloud.instance_variable_set :@retries, retries
|
66
|
+
gcloud.instance_variable_set :@timeout, timeout
|
66
67
|
gcloud.extend Google::Cloud
|
67
68
|
gcloud
|
68
69
|
end
|
@@ -12,6 +12,10 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
|
15
|
+
# This file is now considered DEPRECATED.
|
16
|
+
# Libraries that depend on google-cloud-core ~> 1.1 should not use this file.
|
17
|
+
# Keep the implementation in place to remain compatible with so older gems.
|
18
|
+
|
15
19
|
|
16
20
|
require "json"
|
17
21
|
require "signet/oauth_2/client"
|
data/lib/google/cloud/errors.rb
CHANGED
@@ -13,11 +13,123 @@
|
|
13
13
|
# limitations under the License.
|
14
14
|
|
15
15
|
|
16
|
+
require "English"
|
17
|
+
|
16
18
|
module Google
|
17
19
|
module Cloud
|
18
20
|
##
|
19
21
|
# Base google-cloud exception class.
|
20
22
|
class Error < StandardError
|
23
|
+
##
|
24
|
+
# Construct a new Google::Cloud::Error object, optionally passing in a
|
25
|
+
# message.
|
26
|
+
def initialize msg = nil
|
27
|
+
super
|
28
|
+
@cause = $ERROR_INFO
|
29
|
+
end
|
30
|
+
|
31
|
+
# Add Error#cause (introduced in 2.1) to Ruby 2.0.
|
32
|
+
unless respond_to?(:cause)
|
33
|
+
##
|
34
|
+
# The previous exception at the time this exception was raised. This is
|
35
|
+
# useful for wrapping exceptions and retaining the original exception
|
36
|
+
# information.
|
37
|
+
define_method(:cause) do
|
38
|
+
@cause
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
##
|
43
|
+
# Returns the value of `status_code` from the underlying cause error
|
44
|
+
# object, if both are present. Otherwise returns `nil`.
|
45
|
+
#
|
46
|
+
# This is typically present on errors originating from calls to an API
|
47
|
+
# over HTTP/REST.
|
48
|
+
#
|
49
|
+
# @returns [Object, nil]
|
50
|
+
def status_code
|
51
|
+
return nil unless cause && cause.respond_to?(:status_code)
|
52
|
+
cause.status_code
|
53
|
+
end
|
54
|
+
|
55
|
+
##
|
56
|
+
# Returns the value of `body` from the underlying cause error
|
57
|
+
# object, if both are present. Otherwise returns `nil`.
|
58
|
+
#
|
59
|
+
# This is typically present on errors originating from calls to an API
|
60
|
+
# over HTTP/REST.
|
61
|
+
#
|
62
|
+
# @returns [Object, nil]
|
63
|
+
def body
|
64
|
+
return nil unless cause && cause.respond_to?(:body)
|
65
|
+
cause.body
|
66
|
+
end
|
67
|
+
|
68
|
+
##
|
69
|
+
# Returns the value of `header` from the underlying cause error
|
70
|
+
# object, if both are present. Otherwise returns `nil`.
|
71
|
+
#
|
72
|
+
# This is typically present on errors originating from calls to an API
|
73
|
+
# over HTTP/REST.
|
74
|
+
#
|
75
|
+
# @returns [Object, nil]
|
76
|
+
def header
|
77
|
+
return nil unless cause && cause.respond_to?(:header)
|
78
|
+
cause.header
|
79
|
+
end
|
80
|
+
|
81
|
+
##
|
82
|
+
# Returns the value of `code` from the underlying cause error
|
83
|
+
# object, if both are present. Otherwise returns `nil`.
|
84
|
+
#
|
85
|
+
# This is typically present on errors originating from calls to an API
|
86
|
+
# over gRPC.
|
87
|
+
#
|
88
|
+
# @returns [Object, nil]
|
89
|
+
def code
|
90
|
+
return nil unless cause && cause.respond_to?(:code)
|
91
|
+
cause.code
|
92
|
+
end
|
93
|
+
|
94
|
+
##
|
95
|
+
# Returns the value of `details` from the underlying cause error
|
96
|
+
# object, if both are present. Otherwise returns `nil`.
|
97
|
+
#
|
98
|
+
# This is typically present on errors originating from calls to an API
|
99
|
+
# over gRPC.
|
100
|
+
#
|
101
|
+
# @returns [Object, nil]
|
102
|
+
def details
|
103
|
+
return nil unless cause && cause.respond_to?(:details)
|
104
|
+
cause.details
|
105
|
+
end
|
106
|
+
|
107
|
+
##
|
108
|
+
# Returns the value of `metadata` from the underlying cause error
|
109
|
+
# object, if both are present. Otherwise returns `nil`.
|
110
|
+
#
|
111
|
+
# This is typically present on errors originating from calls to an API
|
112
|
+
# over gRPC.
|
113
|
+
#
|
114
|
+
# @returns [Object, nil]
|
115
|
+
def metadata
|
116
|
+
return nil unless cause && cause.respond_to?(:metadata)
|
117
|
+
cause.metadata
|
118
|
+
end
|
119
|
+
|
120
|
+
##
|
121
|
+
# Returns the value of `status_details` from the underlying cause error
|
122
|
+
# object, if both are present. Otherwise returns `nil`.
|
123
|
+
#
|
124
|
+
# This is typically present on errors originating from calls to an API
|
125
|
+
# over gRPC.
|
126
|
+
#
|
127
|
+
# @returns [Object, nil]
|
128
|
+
def status_details
|
129
|
+
return nil unless cause && cause.respond_to?(:status_details)
|
130
|
+
cause.status_details
|
131
|
+
end
|
132
|
+
|
21
133
|
# @private Create a new error object from a client error
|
22
134
|
def self.from_error error
|
23
135
|
klass = if error.respond_to? :code
|
@@ -50,6 +162,7 @@ module Google
|
|
50
162
|
403 => PermissionDeniedError,
|
51
163
|
404 => NotFoundError,
|
52
164
|
409 => AlreadyExistsError, # AbortedError
|
165
|
+
412 => FailedPreconditionError,
|
53
166
|
429 => ResourceExhaustedError,
|
54
167
|
499 => CanceledError,
|
55
168
|
500 => InternalError, # UnknownError/DataLossError
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Moore
|
@@ -9,22 +9,8 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-11-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
-
- !ruby/object:Gem::Dependency
|
15
|
-
name: googleauth
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
requirements:
|
18
|
-
- - "~>"
|
19
|
-
- !ruby/object:Gem::Version
|
20
|
-
version: 0.5.1
|
21
|
-
type: :runtime
|
22
|
-
prerelease: false
|
23
|
-
version_requirements: !ruby/object:Gem::Requirement
|
24
|
-
requirements:
|
25
|
-
- - "~>"
|
26
|
-
- !ruby/object:Gem::Version
|
27
|
-
version: 0.5.1
|
28
14
|
- !ruby/object:Gem::Dependency
|
29
15
|
name: google-cloud-env
|
30
16
|
requirement: !ruby/object:Gem::Requirement
|
@@ -180,7 +166,7 @@ files:
|
|
180
166
|
- lib/google/cloud/core/version.rb
|
181
167
|
- lib/google/cloud/credentials.rb
|
182
168
|
- lib/google/cloud/errors.rb
|
183
|
-
homepage:
|
169
|
+
homepage: https://github.com/GoogleCloudPlatform/google-cloud-ruby/tree/master/google-cloud-core
|
184
170
|
licenses:
|
185
171
|
- Apache-2.0
|
186
172
|
metadata: {}
|
@@ -200,7 +186,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
200
186
|
version: '0'
|
201
187
|
requirements: []
|
202
188
|
rubyforge_project:
|
203
|
-
rubygems_version: 2.
|
189
|
+
rubygems_version: 2.7.2
|
204
190
|
signing_key:
|
205
191
|
specification_version: 4
|
206
192
|
summary: Internal shared library for google-cloud-ruby
|