google-cloud-vision-v1 0.9.0 → 0.11.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.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +1 -1
  3. data/README.md +3 -3
  4. data/lib/google/cloud/vision/v1/geometry_pb.rb +24 -18
  5. data/lib/google/cloud/vision/v1/image_annotator/client.rb +10 -10
  6. data/lib/google/cloud/vision/v1/image_annotator/operations.rb +14 -16
  7. data/lib/google/cloud/vision/v1/image_annotator/rest/client.rb +662 -0
  8. data/lib/google/cloud/vision/v1/image_annotator/rest/operations.rb +814 -0
  9. data/lib/google/cloud/vision/v1/image_annotator/rest/service_stub.rb +344 -0
  10. data/lib/google/cloud/vision/v1/image_annotator/rest.rb +55 -0
  11. data/lib/google/cloud/vision/v1/image_annotator.rb +7 -1
  12. data/lib/google/cloud/vision/v1/image_annotator_pb.rb +32 -273
  13. data/lib/google/cloud/vision/v1/product_search/client.rb +26 -34
  14. data/lib/google/cloud/vision/v1/product_search/operations.rb +14 -16
  15. data/lib/google/cloud/vision/v1/product_search/rest/client.rb +1970 -0
  16. data/lib/google/cloud/vision/v1/product_search/rest/operations.rb +814 -0
  17. data/lib/google/cloud/vision/v1/product_search/rest/service_stub.rb +1178 -0
  18. data/lib/google/cloud/vision/v1/product_search/rest.rb +66 -0
  19. data/lib/google/cloud/vision/v1/product_search.rb +7 -1
  20. data/lib/google/cloud/vision/v1/product_search_pb.rb +27 -28
  21. data/lib/google/cloud/vision/v1/product_search_service_pb.rb +28 -148
  22. data/lib/google/cloud/vision/v1/rest.rb +38 -0
  23. data/lib/google/cloud/vision/v1/text_annotation_pb.rb +25 -65
  24. data/lib/google/cloud/vision/v1/version.rb +1 -1
  25. data/lib/google/cloud/vision/v1/web_detection_pb.rb +24 -29
  26. data/lib/google/cloud/vision/v1.rb +7 -2
  27. data/proto_docs/google/api/client.rb +381 -0
  28. data/proto_docs/google/api/launch_stage.rb +71 -0
  29. data/proto_docs/google/cloud/vision/v1/image_annotator.rb +2 -1
  30. data/proto_docs/google/protobuf/any.rb +7 -4
  31. data/proto_docs/google/protobuf/timestamp.rb +1 -3
  32. data/proto_docs/google/rpc/status.rb +4 -2
  33. metadata +21 -8
@@ -0,0 +1,344 @@
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/vision/v1/image_annotator_pb"
20
+
21
+ module Google
22
+ module Cloud
23
+ module Vision
24
+ module V1
25
+ module ImageAnnotator
26
+ module Rest
27
+ ##
28
+ # REST service stub for the ImageAnnotator 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 batch_annotate_images REST call
45
+ #
46
+ # @param request_pb [::Google::Cloud::Vision::V1::BatchAnnotateImagesRequest]
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::Vision::V1::BatchAnnotateImagesResponse]
53
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
54
+ #
55
+ # @return [::Google::Cloud::Vision::V1::BatchAnnotateImagesResponse]
56
+ # A result object deserialized from the server's reply
57
+ def batch_annotate_images 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_batch_annotate_images_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::Vision::V1::BatchAnnotateImagesResponse.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 batch_annotate_files REST call
83
+ #
84
+ # @param request_pb [::Google::Cloud::Vision::V1::BatchAnnotateFilesRequest]
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::Vision::V1::BatchAnnotateFilesResponse]
91
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
92
+ #
93
+ # @return [::Google::Cloud::Vision::V1::BatchAnnotateFilesResponse]
94
+ # A result object deserialized from the server's reply
95
+ def batch_annotate_files 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_batch_annotate_files_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::Vision::V1::BatchAnnotateFilesResponse.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 async_batch_annotate_images REST call
121
+ #
122
+ # @param request_pb [::Google::Cloud::Vision::V1::AsyncBatchAnnotateImagesRequest]
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::Longrunning::Operation]
129
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
130
+ #
131
+ # @return [::Google::Longrunning::Operation]
132
+ # A result object deserialized from the server's reply
133
+ def async_batch_annotate_images 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_async_batch_annotate_images_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::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
152
+
153
+ yield result, operation if block_given?
154
+ result
155
+ end
156
+
157
+ ##
158
+ # Baseline implementation for the async_batch_annotate_files REST call
159
+ #
160
+ # @param request_pb [::Google::Cloud::Vision::V1::AsyncBatchAnnotateFilesRequest]
161
+ # A request object representing the call parameters. Required.
162
+ # @param options [::Gapic::CallOptions]
163
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
164
+ #
165
+ # @yield [result, operation] Access the result along with the TransportOperation object
166
+ # @yieldparam result [::Google::Longrunning::Operation]
167
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
168
+ #
169
+ # @return [::Google::Longrunning::Operation]
170
+ # A result object deserialized from the server's reply
171
+ def async_batch_annotate_files request_pb, options = nil
172
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
173
+
174
+ verb, uri, query_string_params, body = ServiceStub.transcode_async_batch_annotate_files_request request_pb
175
+ query_string_params = if query_string_params.any?
176
+ query_string_params.to_h { |p| p.split("=", 2) }
177
+ else
178
+ {}
179
+ end
180
+
181
+ response = @client_stub.make_http_request(
182
+ verb,
183
+ uri: uri,
184
+ body: body || "",
185
+ params: query_string_params,
186
+ options: options
187
+ )
188
+ operation = ::Gapic::Rest::TransportOperation.new response
189
+ result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
190
+
191
+ yield result, operation if block_given?
192
+ result
193
+ end
194
+
195
+ ##
196
+ # @private
197
+ #
198
+ # GRPC transcoding helper method for the batch_annotate_images REST call
199
+ #
200
+ # @param request_pb [::Google::Cloud::Vision::V1::BatchAnnotateImagesRequest]
201
+ # A request object representing the call parameters. Required.
202
+ # @return [Array(String, [String, nil], Hash{String => String})]
203
+ # Uri, Body, Query string parameters
204
+ def self.transcode_batch_annotate_images_request request_pb
205
+ transcoder = Gapic::Rest::GrpcTranscoder.new
206
+ .with_bindings(
207
+ uri_method: :post,
208
+ uri_template: "/v1/images:annotate",
209
+ body: "*",
210
+ matches: []
211
+ )
212
+ .with_bindings(
213
+ uri_method: :post,
214
+ uri_template: "/v1/{parent}/images:annotate",
215
+ body: "*",
216
+ matches: [
217
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
218
+ ]
219
+ )
220
+ .with_bindings(
221
+ uri_method: :post,
222
+ uri_template: "/v1/{parent}/images:annotate",
223
+ body: "*",
224
+ matches: [
225
+ ["parent", %r{^projects/[^/]+/?$}, false]
226
+ ]
227
+ )
228
+ transcoder.transcode request_pb
229
+ end
230
+
231
+ ##
232
+ # @private
233
+ #
234
+ # GRPC transcoding helper method for the batch_annotate_files REST call
235
+ #
236
+ # @param request_pb [::Google::Cloud::Vision::V1::BatchAnnotateFilesRequest]
237
+ # A request object representing the call parameters. Required.
238
+ # @return [Array(String, [String, nil], Hash{String => String})]
239
+ # Uri, Body, Query string parameters
240
+ def self.transcode_batch_annotate_files_request request_pb
241
+ transcoder = Gapic::Rest::GrpcTranscoder.new
242
+ .with_bindings(
243
+ uri_method: :post,
244
+ uri_template: "/v1/files:annotate",
245
+ body: "*",
246
+ matches: []
247
+ )
248
+ .with_bindings(
249
+ uri_method: :post,
250
+ uri_template: "/v1/{parent}/files:annotate",
251
+ body: "*",
252
+ matches: [
253
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
254
+ ]
255
+ )
256
+ .with_bindings(
257
+ uri_method: :post,
258
+ uri_template: "/v1/{parent}/files:annotate",
259
+ body: "*",
260
+ matches: [
261
+ ["parent", %r{^projects/[^/]+/?$}, false]
262
+ ]
263
+ )
264
+ transcoder.transcode request_pb
265
+ end
266
+
267
+ ##
268
+ # @private
269
+ #
270
+ # GRPC transcoding helper method for the async_batch_annotate_images REST call
271
+ #
272
+ # @param request_pb [::Google::Cloud::Vision::V1::AsyncBatchAnnotateImagesRequest]
273
+ # A request object representing the call parameters. Required.
274
+ # @return [Array(String, [String, nil], Hash{String => String})]
275
+ # Uri, Body, Query string parameters
276
+ def self.transcode_async_batch_annotate_images_request request_pb
277
+ transcoder = Gapic::Rest::GrpcTranscoder.new
278
+ .with_bindings(
279
+ uri_method: :post,
280
+ uri_template: "/v1/images:asyncBatchAnnotate",
281
+ body: "*",
282
+ matches: []
283
+ )
284
+ .with_bindings(
285
+ uri_method: :post,
286
+ uri_template: "/v1/{parent}/images:asyncBatchAnnotate",
287
+ body: "*",
288
+ matches: [
289
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
290
+ ]
291
+ )
292
+ .with_bindings(
293
+ uri_method: :post,
294
+ uri_template: "/v1/{parent}/images:asyncBatchAnnotate",
295
+ body: "*",
296
+ matches: [
297
+ ["parent", %r{^projects/[^/]+/?$}, false]
298
+ ]
299
+ )
300
+ transcoder.transcode request_pb
301
+ end
302
+
303
+ ##
304
+ # @private
305
+ #
306
+ # GRPC transcoding helper method for the async_batch_annotate_files REST call
307
+ #
308
+ # @param request_pb [::Google::Cloud::Vision::V1::AsyncBatchAnnotateFilesRequest]
309
+ # A request object representing the call parameters. Required.
310
+ # @return [Array(String, [String, nil], Hash{String => String})]
311
+ # Uri, Body, Query string parameters
312
+ def self.transcode_async_batch_annotate_files_request request_pb
313
+ transcoder = Gapic::Rest::GrpcTranscoder.new
314
+ .with_bindings(
315
+ uri_method: :post,
316
+ uri_template: "/v1/files:asyncBatchAnnotate",
317
+ body: "*",
318
+ matches: []
319
+ )
320
+ .with_bindings(
321
+ uri_method: :post,
322
+ uri_template: "/v1/{parent}/files:asyncBatchAnnotate",
323
+ body: "*",
324
+ matches: [
325
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
326
+ ]
327
+ )
328
+ .with_bindings(
329
+ uri_method: :post,
330
+ uri_template: "/v1/{parent}/files:asyncBatchAnnotate",
331
+ body: "*",
332
+ matches: [
333
+ ["parent", %r{^projects/[^/]+/?$}, false]
334
+ ]
335
+ )
336
+ transcoder.transcode request_pb
337
+ end
338
+ end
339
+ end
340
+ end
341
+ end
342
+ end
343
+ end
344
+ end
@@ -0,0 +1,55 @@
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/vision/v1/version"
24
+
25
+ require "google/cloud/vision/v1/image_annotator/credentials"
26
+ require "google/cloud/vision/v1/image_annotator/paths"
27
+ require "google/cloud/vision/v1/image_annotator/rest/operations"
28
+ require "google/cloud/vision/v1/image_annotator/rest/client"
29
+
30
+ module Google
31
+ module Cloud
32
+ module Vision
33
+ module V1
34
+ ##
35
+ # Service that performs Google Cloud Vision API detection tasks over client
36
+ # images, such as face, landmark, logo, label, and text detection. The
37
+ # ImageAnnotator service returns detected entities from the images.
38
+ #
39
+ # To load this service and instantiate a REST client:
40
+ #
41
+ # require "google/cloud/vision/v1/image_annotator/rest"
42
+ # client = ::Google::Cloud::Vision::V1::ImageAnnotator::Rest::Client.new
43
+ #
44
+ module ImageAnnotator
45
+ # Client for the REST transport
46
+ module Rest
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+
54
+ helper_path = ::File.join __dir__, "rest", "helpers.rb"
55
+ require "google/cloud/vision/v1/image_annotator/rest/helpers" if ::File.file? helper_path
@@ -26,6 +26,7 @@ require "google/cloud/vision/v1/image_annotator/credentials"
26
26
  require "google/cloud/vision/v1/image_annotator/paths"
27
27
  require "google/cloud/vision/v1/image_annotator/operations"
28
28
  require "google/cloud/vision/v1/image_annotator/client"
29
+ require "google/cloud/vision/v1/image_annotator/rest"
29
30
 
30
31
  module Google
31
32
  module Cloud
@@ -36,11 +37,16 @@ module Google
36
37
  # images, such as face, landmark, logo, label, and text detection. The
37
38
  # ImageAnnotator service returns detected entities from the images.
38
39
  #
39
- # To load this service and instantiate a client:
40
+ # @example Load this service and instantiate a gRPC client
40
41
  #
41
42
  # require "google/cloud/vision/v1/image_annotator"
42
43
  # client = ::Google::Cloud::Vision::V1::ImageAnnotator::Client.new
43
44
  #
45
+ # @example Load this service and instantiate a REST client
46
+ #
47
+ # require "google/cloud/vision/v1/image_annotator/rest"
48
+ # client = ::Google::Cloud::Vision::V1::ImageAnnotator::Rest::Client.new
49
+ #
44
50
  module ImageAnnotator
45
51
  end
46
52
  end