google-cloud-resource_settings-v1 0.2.0 → 0.3.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.
@@ -0,0 +1,270 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/resourcesettings/v1/resource_settings_pb"
20
+
21
+ module Google
22
+ module Cloud
23
+ module ResourceSettings
24
+ module V1
25
+ module ResourceSettingsService
26
+ module Rest
27
+ ##
28
+ # REST service stub for the ResourceSettingsService service.
29
+ # Service stub contains baseline method implementations
30
+ # including transcoding, making the REST call, and deserialing the response.
31
+ #
32
+ class ServiceStub
33
+ def initialize endpoint:, credentials:
34
+ # These require statements are intentionally placed here to initialize
35
+ # the REST modules only when it's required.
36
+ require "gapic/rest"
37
+
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
39
+ numeric_enums: true,
40
+ raise_faraday_errors: false
41
+ end
42
+
43
+ ##
44
+ # Baseline implementation for the list_settings REST call
45
+ #
46
+ # @param request_pb [::Google::Cloud::ResourceSettings::V1::ListSettingsRequest]
47
+ # A request object representing the call parameters. Required.
48
+ # @param options [::Gapic::CallOptions]
49
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
50
+ #
51
+ # @yield [result, operation] Access the result along with the TransportOperation object
52
+ # @yieldparam result [::Google::Cloud::ResourceSettings::V1::ListSettingsResponse]
53
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
54
+ #
55
+ # @return [::Google::Cloud::ResourceSettings::V1::ListSettingsResponse]
56
+ # A result object deserialized from the server's reply
57
+ def list_settings request_pb, options = nil
58
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
59
+
60
+ verb, uri, query_string_params, body = ServiceStub.transcode_list_settings_request request_pb
61
+ query_string_params = if query_string_params.any?
62
+ query_string_params.to_h { |p| p.split("=", 2) }
63
+ else
64
+ {}
65
+ end
66
+
67
+ response = @client_stub.make_http_request(
68
+ verb,
69
+ uri: uri,
70
+ body: body || "",
71
+ params: query_string_params,
72
+ options: options
73
+ )
74
+ operation = ::Gapic::Rest::TransportOperation.new response
75
+ result = ::Google::Cloud::ResourceSettings::V1::ListSettingsResponse.decode_json response.body, ignore_unknown_fields: true
76
+
77
+ yield result, operation if block_given?
78
+ result
79
+ end
80
+
81
+ ##
82
+ # Baseline implementation for the get_setting REST call
83
+ #
84
+ # @param request_pb [::Google::Cloud::ResourceSettings::V1::GetSettingRequest]
85
+ # A request object representing the call parameters. Required.
86
+ # @param options [::Gapic::CallOptions]
87
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
88
+ #
89
+ # @yield [result, operation] Access the result along with the TransportOperation object
90
+ # @yieldparam result [::Google::Cloud::ResourceSettings::V1::Setting]
91
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
92
+ #
93
+ # @return [::Google::Cloud::ResourceSettings::V1::Setting]
94
+ # A result object deserialized from the server's reply
95
+ def get_setting request_pb, options = nil
96
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
97
+
98
+ verb, uri, query_string_params, body = ServiceStub.transcode_get_setting_request request_pb
99
+ query_string_params = if query_string_params.any?
100
+ query_string_params.to_h { |p| p.split("=", 2) }
101
+ else
102
+ {}
103
+ end
104
+
105
+ response = @client_stub.make_http_request(
106
+ verb,
107
+ uri: uri,
108
+ body: body || "",
109
+ params: query_string_params,
110
+ options: options
111
+ )
112
+ operation = ::Gapic::Rest::TransportOperation.new response
113
+ result = ::Google::Cloud::ResourceSettings::V1::Setting.decode_json response.body, ignore_unknown_fields: true
114
+
115
+ yield result, operation if block_given?
116
+ result
117
+ end
118
+
119
+ ##
120
+ # Baseline implementation for the update_setting REST call
121
+ #
122
+ # @param request_pb [::Google::Cloud::ResourceSettings::V1::UpdateSettingRequest]
123
+ # A request object representing the call parameters. Required.
124
+ # @param options [::Gapic::CallOptions]
125
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
126
+ #
127
+ # @yield [result, operation] Access the result along with the TransportOperation object
128
+ # @yieldparam result [::Google::Cloud::ResourceSettings::V1::Setting]
129
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
130
+ #
131
+ # @return [::Google::Cloud::ResourceSettings::V1::Setting]
132
+ # A result object deserialized from the server's reply
133
+ def update_setting request_pb, options = nil
134
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
135
+
136
+ verb, uri, query_string_params, body = ServiceStub.transcode_update_setting_request request_pb
137
+ query_string_params = if query_string_params.any?
138
+ query_string_params.to_h { |p| p.split("=", 2) }
139
+ else
140
+ {}
141
+ end
142
+
143
+ response = @client_stub.make_http_request(
144
+ verb,
145
+ uri: uri,
146
+ body: body || "",
147
+ params: query_string_params,
148
+ options: options
149
+ )
150
+ operation = ::Gapic::Rest::TransportOperation.new response
151
+ result = ::Google::Cloud::ResourceSettings::V1::Setting.decode_json response.body, ignore_unknown_fields: true
152
+
153
+ yield result, operation if block_given?
154
+ result
155
+ end
156
+
157
+ ##
158
+ # @private
159
+ #
160
+ # GRPC transcoding helper method for the list_settings REST call
161
+ #
162
+ # @param request_pb [::Google::Cloud::ResourceSettings::V1::ListSettingsRequest]
163
+ # A request object representing the call parameters. Required.
164
+ # @return [Array(String, [String, nil], Hash{String => String})]
165
+ # Uri, Body, Query string parameters
166
+ def self.transcode_list_settings_request request_pb
167
+ transcoder = Gapic::Rest::GrpcTranscoder.new
168
+ .with_bindings(
169
+ uri_method: :get,
170
+ uri_template: "/v1/{parent}/settings",
171
+ matches: [
172
+ ["parent", %r{^organizations/[^/]+/?$}, false]
173
+ ]
174
+ )
175
+ .with_bindings(
176
+ uri_method: :get,
177
+ uri_template: "/v1/{parent}/settings",
178
+ matches: [
179
+ ["parent", %r{^folders/[^/]+/?$}, false]
180
+ ]
181
+ )
182
+ .with_bindings(
183
+ uri_method: :get,
184
+ uri_template: "/v1/{parent}/settings",
185
+ matches: [
186
+ ["parent", %r{^projects/[^/]+/?$}, false]
187
+ ]
188
+ )
189
+ transcoder.transcode request_pb
190
+ end
191
+
192
+ ##
193
+ # @private
194
+ #
195
+ # GRPC transcoding helper method for the get_setting REST call
196
+ #
197
+ # @param request_pb [::Google::Cloud::ResourceSettings::V1::GetSettingRequest]
198
+ # A request object representing the call parameters. Required.
199
+ # @return [Array(String, [String, nil], Hash{String => String})]
200
+ # Uri, Body, Query string parameters
201
+ def self.transcode_get_setting_request request_pb
202
+ transcoder = Gapic::Rest::GrpcTranscoder.new
203
+ .with_bindings(
204
+ uri_method: :get,
205
+ uri_template: "/v1/{name}",
206
+ matches: [
207
+ ["name", %r{^organizations/[^/]+/settings/[^/]+/?$}, false]
208
+ ]
209
+ )
210
+ .with_bindings(
211
+ uri_method: :get,
212
+ uri_template: "/v1/{name}",
213
+ matches: [
214
+ ["name", %r{^folders/[^/]+/settings/[^/]+/?$}, false]
215
+ ]
216
+ )
217
+ .with_bindings(
218
+ uri_method: :get,
219
+ uri_template: "/v1/{name}",
220
+ matches: [
221
+ ["name", %r{^projects/[^/]+/settings/[^/]+/?$}, false]
222
+ ]
223
+ )
224
+ transcoder.transcode request_pb
225
+ end
226
+
227
+ ##
228
+ # @private
229
+ #
230
+ # GRPC transcoding helper method for the update_setting REST call
231
+ #
232
+ # @param request_pb [::Google::Cloud::ResourceSettings::V1::UpdateSettingRequest]
233
+ # A request object representing the call parameters. Required.
234
+ # @return [Array(String, [String, nil], Hash{String => String})]
235
+ # Uri, Body, Query string parameters
236
+ def self.transcode_update_setting_request request_pb
237
+ transcoder = Gapic::Rest::GrpcTranscoder.new
238
+ .with_bindings(
239
+ uri_method: :patch,
240
+ uri_template: "/v1/{setting.name}",
241
+ body: "setting",
242
+ matches: [
243
+ ["setting.name", %r{^organizations/[^/]+/settings/[^/]+/?$}, false]
244
+ ]
245
+ )
246
+ .with_bindings(
247
+ uri_method: :patch,
248
+ uri_template: "/v1/{setting.name}",
249
+ body: "setting",
250
+ matches: [
251
+ ["setting.name", %r{^folders/[^/]+/settings/[^/]+/?$}, false]
252
+ ]
253
+ )
254
+ .with_bindings(
255
+ uri_method: :patch,
256
+ uri_template: "/v1/{setting.name}",
257
+ body: "setting",
258
+ matches: [
259
+ ["setting.name", %r{^projects/[^/]+/settings/[^/]+/?$}, false]
260
+ ]
261
+ )
262
+ transcoder.transcode request_pb
263
+ end
264
+ end
265
+ end
266
+ end
267
+ end
268
+ end
269
+ end
270
+ end
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "gapic/rest"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/resource_settings/v1/version"
24
+
25
+ require "google/cloud/resource_settings/v1/resource_settings_service/credentials"
26
+ require "google/cloud/resource_settings/v1/resource_settings_service/paths"
27
+ require "google/cloud/resource_settings/v1/resource_settings_service/rest/client"
28
+
29
+ module Google
30
+ module Cloud
31
+ module ResourceSettings
32
+ module V1
33
+ ##
34
+ # An interface to interact with resource settings and setting values throughout
35
+ # the resource hierarchy.
36
+ #
37
+ # Services may surface a number of settings for users to control how their
38
+ # resources behave. Values of settings applied on a given Cloud resource are
39
+ # evaluated hierarchically and inherited by all descendants of that resource.
40
+ #
41
+ # For all requests, returns a `google.rpc.Status` with
42
+ # `google.rpc.Code.PERMISSION_DENIED` if the IAM check fails or the `parent`
43
+ # resource is not in a Cloud Organization.
44
+ # For all requests, returns a `google.rpc.Status` with
45
+ # `google.rpc.Code.INVALID_ARGUMENT` if the request is malformed.
46
+ #
47
+ # To load this service and instantiate a REST client:
48
+ #
49
+ # require "google/cloud/resource_settings/v1/resource_settings_service/rest"
50
+ # client = ::Google::Cloud::ResourceSettings::V1::ResourceSettingsService::Rest::Client.new
51
+ #
52
+ module ResourceSettingsService
53
+ # Client for the REST transport
54
+ module Rest
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
61
+
62
+ helper_path = ::File.join __dir__, "rest", "helpers.rb"
63
+ require "google/cloud/resource_settings/v1/resource_settings_service/rest/helpers" if ::File.file? helper_path
@@ -25,6 +25,7 @@ require "google/cloud/resource_settings/v1/version"
25
25
  require "google/cloud/resource_settings/v1/resource_settings_service/credentials"
26
26
  require "google/cloud/resource_settings/v1/resource_settings_service/paths"
27
27
  require "google/cloud/resource_settings/v1/resource_settings_service/client"
28
+ require "google/cloud/resource_settings/v1/resource_settings_service/rest"
28
29
 
29
30
  module Google
30
31
  module Cloud
@@ -44,11 +45,16 @@ module Google
44
45
  # For all requests, returns a `google.rpc.Status` with
45
46
  # `google.rpc.Code.INVALID_ARGUMENT` if the request is malformed.
46
47
  #
47
- # To load this service and instantiate a client:
48
+ # @example Load this service and instantiate a gRPC client
48
49
  #
49
50
  # require "google/cloud/resource_settings/v1/resource_settings_service"
50
51
  # client = ::Google::Cloud::ResourceSettings::V1::ResourceSettingsService::Client.new
51
52
  #
53
+ # @example Load this service and instantiate a REST client
54
+ #
55
+ # require "google/cloud/resource_settings/v1/resource_settings_service/rest"
56
+ # client = ::Google::Cloud::ResourceSettings::V1::ResourceSettingsService::Rest::Client.new
57
+ #
52
58
  module ResourceSettingsService
53
59
  end
54
60
  end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/resource_settings/v1/resource_settings_service/rest"
20
+ require "google/cloud/resource_settings/v1/version"
21
+
22
+ module Google
23
+ module Cloud
24
+ module ResourceSettings
25
+ ##
26
+ # To load just the REST part of this package, including all its services, and instantiate a REST client:
27
+ #
28
+ # @example
29
+ #
30
+ # require "google/cloud/resource_settings/v1/rest"
31
+ # client = ::Google::Cloud::ResourceSettings::V1::ResourceSettingsService::Rest::Client.new
32
+ #
33
+ module V1
34
+ end
35
+ end
36
+ end
37
+ end
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module ResourceSettings
23
23
  module V1
24
- VERSION = "0.2.0"
24
+ VERSION = "0.3.0"
25
25
  end
26
26
  end
27
27
  end
@@ -23,13 +23,18 @@ module Google
23
23
  module Cloud
24
24
  module ResourceSettings
25
25
  ##
26
- # To load this package, including all its services, and instantiate a client:
26
+ # API client module.
27
27
  #
28
- # @example
28
+ # @example Load this package, including all its services, and instantiate a gRPC client
29
29
  #
30
30
  # require "google/cloud/resource_settings/v1"
31
31
  # client = ::Google::Cloud::ResourceSettings::V1::ResourceSettingsService::Client.new
32
32
  #
33
+ # @example Load this package, including all its services, and instantiate a REST client
34
+ #
35
+ # require "google/cloud/resource_settings/v1"
36
+ # client = ::Google::Cloud::ResourceSettings::V1::ResourceSettingsService::Rest::Client.new
37
+ #
33
38
  module V1
34
39
  end
35
40
  end