google-cloud-vision-v1 0.9.0 → 0.10.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,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
@@ -416,13 +416,11 @@ module Google
416
416
  # # Call the list_product_sets method.
417
417
  # result = client.list_product_sets request
418
418
  #
419
- # # The returned object is of type Gapic::PagedEnumerable. You can
420
- # # iterate over all elements by calling #each, and the enumerable
421
- # # will lazily make API calls to fetch subsequent pages. Other
422
- # # methods are also available for managing paging directly.
423
- # result.each do |response|
419
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
420
+ # # over elements, and API calls will be issued to fetch pages as needed.
421
+ # result.each do |item|
424
422
  # # Each element is of type ::Google::Cloud::Vision::V1::ProductSet.
425
- # p response
423
+ # p item
426
424
  # end
427
425
  #
428
426
  def list_product_sets request, options = nil
@@ -901,13 +899,11 @@ module Google
901
899
  # # Call the list_products method.
902
900
  # result = client.list_products request
903
901
  #
904
- # # The returned object is of type Gapic::PagedEnumerable. You can
905
- # # iterate over all elements by calling #each, and the enumerable
906
- # # will lazily make API calls to fetch subsequent pages. Other
907
- # # methods are also available for managing paging directly.
908
- # result.each do |response|
902
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
903
+ # # over elements, and API calls will be issued to fetch pages as needed.
904
+ # result.each do |item|
909
905
  # # Each element is of type ::Google::Cloud::Vision::V1::Product.
910
- # p response
906
+ # p item
911
907
  # end
912
908
  #
913
909
  def list_products request, options = nil
@@ -1507,13 +1503,11 @@ module Google
1507
1503
  # # Call the list_reference_images method.
1508
1504
  # result = client.list_reference_images request
1509
1505
  #
1510
- # # The returned object is of type Gapic::PagedEnumerable. You can
1511
- # # iterate over all elements by calling #each, and the enumerable
1512
- # # will lazily make API calls to fetch subsequent pages. Other
1513
- # # methods are also available for managing paging directly.
1514
- # result.each do |response|
1506
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
1507
+ # # over elements, and API calls will be issued to fetch pages as needed.
1508
+ # result.each do |item|
1515
1509
  # # Each element is of type ::Google::Cloud::Vision::V1::ReferenceImage.
1516
- # p response
1510
+ # p item
1517
1511
  # end
1518
1512
  #
1519
1513
  def list_reference_images request, options = nil
@@ -1897,13 +1891,11 @@ module Google
1897
1891
  # # Call the list_products_in_product_set method.
1898
1892
  # result = client.list_products_in_product_set request
1899
1893
  #
1900
- # # The returned object is of type Gapic::PagedEnumerable. You can
1901
- # # iterate over all elements by calling #each, and the enumerable
1902
- # # will lazily make API calls to fetch subsequent pages. Other
1903
- # # methods are also available for managing paging directly.
1904
- # result.each do |response|
1894
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
1895
+ # # over elements, and API calls will be issued to fetch pages as needed.
1896
+ # result.each do |item|
1905
1897
  # # Each element is of type ::Google::Cloud::Vision::V1::Product.
1906
- # p response
1898
+ # p item
1907
1899
  # end
1908
1900
  #
1909
1901
  def list_products_in_product_set request, options = nil
@@ -2003,14 +1995,14 @@ module Google
2003
1995
  # # Call the import_product_sets method.
2004
1996
  # result = client.import_product_sets request
2005
1997
  #
2006
- # # The returned object is of type Gapic::Operation. You can use this
2007
- # # object to check the status of an operation, cancel it, or wait
2008
- # # for results. Here is how to block until completion:
1998
+ # # The returned object is of type Gapic::Operation. You can use it to
1999
+ # # check the status of an operation, cancel it, or wait for results.
2000
+ # # Here is how to wait for a response.
2009
2001
  # result.wait_until_done! timeout: 60
2010
2002
  # if result.response?
2011
2003
  # p result.response
2012
2004
  # else
2013
- # puts "Error!"
2005
+ # puts "No response received."
2014
2006
  # end
2015
2007
  #
2016
2008
  def import_product_sets request, options = nil
@@ -2129,14 +2121,14 @@ module Google
2129
2121
  # # Call the purge_products method.
2130
2122
  # result = client.purge_products request
2131
2123
  #
2132
- # # The returned object is of type Gapic::Operation. You can use this
2133
- # # object to check the status of an operation, cancel it, or wait
2134
- # # for results. Here is how to block until completion:
2124
+ # # The returned object is of type Gapic::Operation. You can use it to
2125
+ # # check the status of an operation, cancel it, or wait for results.
2126
+ # # Here is how to wait for a response.
2135
2127
  # result.wait_until_done! timeout: 60
2136
2128
  # if result.response?
2137
2129
  # p result.response
2138
2130
  # else
2139
- # puts "Error!"
2131
+ # puts "No response received."
2140
2132
  # end
2141
2133
  #
2142
2134
  def purge_products request, options = nil
@@ -158,13 +158,11 @@ module Google
158
158
  # # Call the list_operations method.
159
159
  # result = client.list_operations request
160
160
  #
161
- # # The returned object is of type Gapic::PagedEnumerable. You can
162
- # # iterate over all elements by calling #each, and the enumerable
163
- # # will lazily make API calls to fetch subsequent pages. Other
164
- # # methods are also available for managing paging directly.
165
- # result.each do |response|
161
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
162
+ # # over elements, and API calls will be issued to fetch pages as needed.
163
+ # result.each do |item|
166
164
  # # Each element is of type ::Google::Longrunning::Operation.
167
- # p response
165
+ # p item
168
166
  # end
169
167
  #
170
168
  def list_operations request, options = nil
@@ -253,14 +251,14 @@ module Google
253
251
  # # Call the get_operation method.
254
252
  # result = client.get_operation request
255
253
  #
256
- # # The returned object is of type Gapic::Operation. You can use this
257
- # # object to check the status of an operation, cancel it, or wait
258
- # # for results. Here is how to block until completion:
254
+ # # The returned object is of type Gapic::Operation. You can use it to
255
+ # # check the status of an operation, cancel it, or wait for results.
256
+ # # Here is how to wait for a response.
259
257
  # result.wait_until_done! timeout: 60
260
258
  # if result.response?
261
259
  # p result.response
262
260
  # else
263
- # puts "Error!"
261
+ # puts "No response received."
264
262
  # end
265
263
  #
266
264
  def get_operation request, options = nil
@@ -540,14 +538,14 @@ module Google
540
538
  # # Call the wait_operation method.
541
539
  # result = client.wait_operation request
542
540
  #
543
- # # The returned object is of type Gapic::Operation. You can use this
544
- # # object to check the status of an operation, cancel it, or wait
545
- # # for results. Here is how to block until completion:
541
+ # # The returned object is of type Gapic::Operation. You can use it to
542
+ # # check the status of an operation, cancel it, or wait for results.
543
+ # # Here is how to wait for a response.
546
544
  # result.wait_until_done! timeout: 60
547
545
  # if result.response?
548
546
  # p result.response
549
547
  # else
550
- # puts "Error!"
548
+ # puts "No response received."
551
549
  # end
552
550
  #
553
551
  def wait_operation request, options = nil