google-cloud-service_directory 1.5.1 → 1.6.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: a12d34e7f86e40f24e16c588e8bc1bbe11dba6b76ccde295d450c81e1babd9cc
4
- data.tar.gz: b244a4e125c8aabce142c9b68a001b67554dfa31d2aa0b3895ae80d137cacb43
3
+ metadata.gz: 26fe1a0f71216b878e7190dfc775532a7480f13cbbf786b9307fbf658460b97f
4
+ data.tar.gz: ad49d8d007f5ea2716ee8490e966558a832e98fda8b203a1dbd9a08ad8bf5d26
5
5
  SHA512:
6
- metadata.gz: aeab7130863e84f7bd181e137fa28d6572e8e6b4c26e473e9fc14cd4b44a6ae55ef2fcf16e53de6584073b5faf8483638debe6b70f18f356eccb4b0fc9f91cfd
7
- data.tar.gz: 88cfe01c23ca09ca9598394d90f199001962c59f9eb2d5bb09f4f35adeb14ae5f12efc2f668e8506460ff17c9d4ebc293662cc8ad09fd157e5bc5fb8a971e6b2
6
+ metadata.gz: ae848e207b21e5dfaf66a5256f7838026d8f50973aeac7697155fea819a6d684cb830b8c242daf25df22ab4e22c161f14f846ce4b2ae14ffe462f1919266f04a
7
+ data.tar.gz: fbcb938cae5629265373e09893233db07fe2916509a92eee1855bc8a2bed9fcf2098081711cc0f12a2f98313408181030f42056ab0aa8c9f88072f549facbb62
data/README.md CHANGED
@@ -35,9 +35,40 @@ In order to use this library, you first need to go through the following steps:
35
35
  1. [Enable the API.](https://console.cloud.google.com/apis/library/servicedirectory.googleapis.com)
36
36
  1. {file:AUTHENTICATION.md Set up authentication.}
37
37
 
38
+ ## Debug Logging
39
+
40
+ This library comes with opt-in Debug Logging that can help you troubleshoot
41
+ your application's integration with the API. When logging is activated, key
42
+ events such as requests and responses, along with data payloads and metadata
43
+ such as headers and client configuration, are logged to the standard error
44
+ stream.
45
+
46
+ **WARNING:** Client Library Debug Logging includes your data payloads in
47
+ plaintext, which could include sensitive data such as PII for yourself or your
48
+ customers, private keys, or other security data that could be compromising if
49
+ leaked. Always practice good data hygiene with your application logs, and follow
50
+ the principle of least access. Google also recommends that Client Library Debug
51
+ Logging be enabled only temporarily during active debugging, and not used
52
+ permanently in production.
53
+
54
+ To enable logging, set the environment variable `GOOGLE_SDK_RUBY_LOGGING_GEMS`
55
+ to the value `all`. Alternatively, you can set the value to a comma-delimited
56
+ list of client library gem names. This will select the default logging behavior,
57
+ which writes logs to the standard error stream. On a local workstation, this may
58
+ result in logs appearing on the console. When running on a Google Cloud hosting
59
+ service such as [Google Cloud Run](https://cloud.google.com/run), this generally
60
+ results in logs appearing alongside your application logs in the
61
+ [Google Cloud Logging](https://cloud.google.com/logging/) service.
62
+
63
+ Debug logging also requires that the versioned clients for this service be
64
+ sufficiently recent, released after about Dec 10, 2024. If logging is not
65
+ working, try updating the versioned clients in your bundle or installed gems:
66
+ [google-cloud-service_directory-v1](https://cloud.google.com/ruby/docs/reference/google-cloud-service_directory-v1/latest),
67
+ [google-cloud-service_directory-v1beta1](https://cloud.google.com/ruby/docs/reference/google-cloud-service_directory-v1beta1/latest).
68
+
38
69
  ## Supported Ruby Versions
39
70
 
40
- This library is supported on Ruby 2.7+.
71
+ This library is supported on Ruby 3.0+.
41
72
 
42
73
  Google provides official support for Ruby versions that are actively supported
43
74
  by Ruby Core—that is, Ruby versions that are either in normal maintenance or
@@ -16,7 +16,7 @@
16
16
  module Google
17
17
  module Cloud
18
18
  module ServiceDirectory
19
- VERSION = "1.5.1".freeze
19
+ VERSION = "1.6.0".freeze
20
20
  end
21
21
  end
22
22
  end
@@ -58,6 +58,11 @@ module Google
58
58
  # You can also specify a different transport by passing `:rest` or `:grpc` in
59
59
  # the `transport` parameter.
60
60
  #
61
+ # Raises an exception if the currently installed versioned client gem for the
62
+ # given API version does not support the given transport of the LookupService service.
63
+ # You can determine whether the method will succeed by calling
64
+ # {Google::Cloud::ServiceDirectory.lookup_service_available?}.
65
+ #
61
66
  # ## About LookupService
62
67
  #
63
68
  # Service Directory API for looking up service data at runtime.
@@ -79,6 +84,37 @@ module Google
79
84
  service_module.const_get(:Client).new(&block)
80
85
  end
81
86
 
87
+ ##
88
+ # Determines whether the LookupService service is supported by the current client.
89
+ # If true, you can retrieve a client object by calling {Google::Cloud::ServiceDirectory.lookup_service}.
90
+ # If false, that method will raise an exception. This could happen if the given
91
+ # API version does not exist or does not support the LookupService service,
92
+ # or if the versioned client gem needs an update to support the LookupService service.
93
+ #
94
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
95
+ # Defaults to `:v1`.
96
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
97
+ # @return [boolean] Whether the service is available.
98
+ #
99
+ def self.lookup_service_available? version: :v1, transport: :grpc
100
+ require "google/cloud/service_directory/#{version.to_s.downcase}"
101
+ package_name = Google::Cloud::ServiceDirectory
102
+ .constants
103
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
104
+ .first
105
+ return false unless package_name
106
+ service_module = Google::Cloud::ServiceDirectory.const_get package_name
107
+ return false unless service_module.const_defined? :LookupService
108
+ service_module = service_module.const_get :LookupService
109
+ if transport == :rest
110
+ return false unless service_module.const_defined? :Rest
111
+ service_module = service_module.const_get :Rest
112
+ end
113
+ service_module.const_defined? :Client
114
+ rescue ::LoadError
115
+ false
116
+ end
117
+
82
118
  ##
83
119
  # Create a new client object for RegistrationService.
84
120
  #
@@ -92,6 +128,11 @@ module Google
92
128
  # You can also specify a different transport by passing `:rest` or `:grpc` in
93
129
  # the `transport` parameter.
94
130
  #
131
+ # Raises an exception if the currently installed versioned client gem for the
132
+ # given API version does not support the given transport of the RegistrationService service.
133
+ # You can determine whether the method will succeed by calling
134
+ # {Google::Cloud::ServiceDirectory.registration_service_available?}.
135
+ #
95
136
  # ## About RegistrationService
96
137
  #
97
138
  # Service Directory API for registering services. It defines the following
@@ -127,6 +168,37 @@ module Google
127
168
  service_module.const_get(:Client).new(&block)
128
169
  end
129
170
 
171
+ ##
172
+ # Determines whether the RegistrationService service is supported by the current client.
173
+ # If true, you can retrieve a client object by calling {Google::Cloud::ServiceDirectory.registration_service}.
174
+ # If false, that method will raise an exception. This could happen if the given
175
+ # API version does not exist or does not support the RegistrationService service,
176
+ # or if the versioned client gem needs an update to support the RegistrationService service.
177
+ #
178
+ # @param version [::String, ::Symbol] The API version to connect to. Optional.
179
+ # Defaults to `:v1`.
180
+ # @param transport [:grpc, :rest] The transport to use. Defaults to `:grpc`.
181
+ # @return [boolean] Whether the service is available.
182
+ #
183
+ def self.registration_service_available? version: :v1, transport: :grpc
184
+ require "google/cloud/service_directory/#{version.to_s.downcase}"
185
+ package_name = Google::Cloud::ServiceDirectory
186
+ .constants
187
+ .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
188
+ .first
189
+ return false unless package_name
190
+ service_module = Google::Cloud::ServiceDirectory.const_get package_name
191
+ return false unless service_module.const_defined? :RegistrationService
192
+ service_module = service_module.const_get :RegistrationService
193
+ if transport == :rest
194
+ return false unless service_module.const_defined? :Rest
195
+ service_module = service_module.const_get :Rest
196
+ end
197
+ service_module.const_defined? :Client
198
+ rescue ::LoadError
199
+ false
200
+ end
201
+
130
202
  ##
131
203
  # Configure the google-cloud-service_directory library.
132
204
  #
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-service_directory
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-08-08 00:00:00.000000000 Z
10
+ date: 2025-01-29 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: google-cloud-core
@@ -82,7 +81,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
82
81
  licenses:
83
82
  - Apache-2.0
84
83
  metadata: {}
85
- post_install_message:
86
84
  rdoc_options: []
87
85
  require_paths:
88
86
  - lib
@@ -90,15 +88,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
90
88
  requirements:
91
89
  - - ">="
92
90
  - !ruby/object:Gem::Version
93
- version: '2.7'
91
+ version: '3.0'
94
92
  required_rubygems_version: !ruby/object:Gem::Requirement
95
93
  requirements:
96
94
  - - ">="
97
95
  - !ruby/object:Gem::Version
98
96
  version: '0'
99
97
  requirements: []
100
- rubygems_version: 3.5.6
101
- signing_key:
98
+ rubygems_version: 3.6.2
102
99
  specification_version: 4
103
100
  summary: API Client library for the Service Directory API
104
101
  test_files: []