google-cloud-vision-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +203 -0
  5. data/README.md +24 -0
  6. data/lib/google-cloud-vision-v1.rb +1 -0
  7. data/lib/google/cloud/common_resources_pb.rb +15 -0
  8. data/lib/google/cloud/vision/v1.rb +20 -0
  9. data/lib/google/cloud/vision/v1/geometry_pb.rb +40 -0
  10. data/lib/google/cloud/vision/v1/image_annotator.rb +21 -0
  11. data/lib/google/cloud/vision/v1/image_annotator/client.rb +682 -0
  12. data/lib/google/cloud/vision/v1/image_annotator/credentials.rb +52 -0
  13. data/lib/google/cloud/vision/v1/image_annotator/helpers.rb +1228 -0
  14. data/lib/google/cloud/vision/v1/image_annotator/operations.rb +558 -0
  15. data/lib/google/cloud/vision/v1/image_annotator/paths.rb +52 -0
  16. data/lib/google/cloud/vision/v1/image_annotator_pb.rb +345 -0
  17. data/lib/google/cloud/vision/v1/image_annotator_services_pb.rb +73 -0
  18. data/lib/google/cloud/vision/v1/product_search.rb +21 -0
  19. data/lib/google/cloud/vision/v1/product_search/client.rb +2134 -0
  20. data/lib/google/cloud/vision/v1/product_search/credentials.rb +52 -0
  21. data/lib/google/cloud/vision/v1/product_search/operations.rb +558 -0
  22. data/lib/google/cloud/vision/v1/product_search/paths.rb +109 -0
  23. data/lib/google/cloud/vision/v1/product_search_pb.rb +55 -0
  24. data/lib/google/cloud/vision/v1/product_search_service_pb.rb +208 -0
  25. data/lib/google/cloud/vision/v1/product_search_service_services_pb.rb +232 -0
  26. data/lib/google/cloud/vision/v1/text_annotation_pb.rb +95 -0
  27. data/lib/google/cloud/vision/v1/version.rb +28 -0
  28. data/lib/google/cloud/vision/v1/web_detection_pb.rb +52 -0
  29. data/proto_docs/README.md +4 -0
  30. data/proto_docs/google/api/field_behavior.rb +59 -0
  31. data/proto_docs/google/api/resource.rb +247 -0
  32. data/proto_docs/google/cloud/vision/v1/geometry.rb +82 -0
  33. data/proto_docs/google/cloud/vision/v1/image_annotator.rb +1044 -0
  34. data/proto_docs/google/cloud/vision/v1/product_search.rb +134 -0
  35. data/proto_docs/google/cloud/vision/v1/product_search_service.rb +669 -0
  36. data/proto_docs/google/cloud/vision/v1/text_annotation.rb +285 -0
  37. data/proto_docs/google/cloud/vision/v1/web_detection.rb +121 -0
  38. data/proto_docs/google/longrunning/operations.rb +150 -0
  39. data/proto_docs/google/protobuf/any.rb +137 -0
  40. data/proto_docs/google/protobuf/empty.rb +36 -0
  41. data/proto_docs/google/protobuf/field_mask.rb +237 -0
  42. data/proto_docs/google/protobuf/timestamp.rb +116 -0
  43. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  44. data/proto_docs/google/rpc/status.rb +46 -0
  45. data/proto_docs/google/type/color.rb +168 -0
  46. data/proto_docs/google/type/latlng.rb +38 -0
  47. metadata +201 -0
@@ -0,0 +1,109 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 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
+
20
+ module Google
21
+ module Cloud
22
+ module Vision
23
+ module V1
24
+ module ProductSearch
25
+ # Path helper methods for the ProductSearch API.
26
+ module Paths
27
+ ##
28
+ # Create a fully-qualified Location resource string.
29
+ #
30
+ # The resource will be in the following format:
31
+ #
32
+ # `projects/{project}/locations/{location}`
33
+ #
34
+ # @param project [String]
35
+ # @param location [String]
36
+ #
37
+ # @return [String]
38
+ def location_path project:, location:
39
+ raise ArgumentError, "project cannot contain /" if project.to_s.include? "/"
40
+
41
+ "projects/#{project}/locations/#{location}"
42
+ end
43
+
44
+ ##
45
+ # Create a fully-qualified Product resource string.
46
+ #
47
+ # The resource will be in the following format:
48
+ #
49
+ # `projects/{project}/locations/{location}/products/{product}`
50
+ #
51
+ # @param project [String]
52
+ # @param location [String]
53
+ # @param product [String]
54
+ #
55
+ # @return [String]
56
+ def product_path project:, location:, product:
57
+ raise ArgumentError, "project cannot contain /" if project.to_s.include? "/"
58
+ raise ArgumentError, "location cannot contain /" if location.to_s.include? "/"
59
+
60
+ "projects/#{project}/locations/#{location}/products/#{product}"
61
+ end
62
+
63
+ ##
64
+ # Create a fully-qualified ProductSet resource string.
65
+ #
66
+ # The resource will be in the following format:
67
+ #
68
+ # `projects/{project}/locations/{location}/productSets/{product_set}`
69
+ #
70
+ # @param project [String]
71
+ # @param location [String]
72
+ # @param product_set [String]
73
+ #
74
+ # @return [String]
75
+ def product_set_path project:, location:, product_set:
76
+ raise ArgumentError, "project cannot contain /" if project.to_s.include? "/"
77
+ raise ArgumentError, "location cannot contain /" if location.to_s.include? "/"
78
+
79
+ "projects/#{project}/locations/#{location}/productSets/#{product_set}"
80
+ end
81
+
82
+ ##
83
+ # Create a fully-qualified ReferenceImage resource string.
84
+ #
85
+ # The resource will be in the following format:
86
+ #
87
+ # `projects/{project}/locations/{location}/products/{product}/referenceImages/{reference_image}`
88
+ #
89
+ # @param project [String]
90
+ # @param location [String]
91
+ # @param product [String]
92
+ # @param reference_image [String]
93
+ #
94
+ # @return [String]
95
+ def reference_image_path project:, location:, product:, reference_image:
96
+ raise ArgumentError, "project cannot contain /" if project.to_s.include? "/"
97
+ raise ArgumentError, "location cannot contain /" if location.to_s.include? "/"
98
+ raise ArgumentError, "product cannot contain /" if product.to_s.include? "/"
99
+
100
+ "projects/#{project}/locations/#{location}/products/#{product}/referenceImages/#{reference_image}"
101
+ end
102
+
103
+ extend self
104
+ end
105
+ end
106
+ end
107
+ end
108
+ end
109
+ end
@@ -0,0 +1,55 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/vision/v1/product_search.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/cloud/vision/v1/geometry_pb'
7
+ require 'google/cloud/vision/v1/product_search_service_pb'
8
+ require 'google/protobuf/timestamp_pb'
9
+ require 'google/api/annotations_pb'
10
+ require 'google/api/resource_pb'
11
+ Google::Protobuf::DescriptorPool.generated_pool.build do
12
+ add_file("google/cloud/vision/v1/product_search.proto", :syntax => :proto3) do
13
+ add_message "google.cloud.vision.v1.ProductSearchParams" do
14
+ optional :bounding_poly, :message, 9, "google.cloud.vision.v1.BoundingPoly"
15
+ optional :product_set, :string, 6
16
+ repeated :product_categories, :string, 7
17
+ optional :filter, :string, 8
18
+ end
19
+ add_message "google.cloud.vision.v1.ProductSearchResults" do
20
+ optional :index_time, :message, 2, "google.protobuf.Timestamp"
21
+ repeated :results, :message, 5, "google.cloud.vision.v1.ProductSearchResults.Result"
22
+ repeated :product_grouped_results, :message, 6, "google.cloud.vision.v1.ProductSearchResults.GroupedResult"
23
+ end
24
+ add_message "google.cloud.vision.v1.ProductSearchResults.Result" do
25
+ optional :product, :message, 1, "google.cloud.vision.v1.Product"
26
+ optional :score, :float, 2
27
+ optional :image, :string, 3
28
+ end
29
+ add_message "google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation" do
30
+ optional :mid, :string, 1
31
+ optional :language_code, :string, 2
32
+ optional :name, :string, 3
33
+ optional :score, :float, 4
34
+ end
35
+ add_message "google.cloud.vision.v1.ProductSearchResults.GroupedResult" do
36
+ optional :bounding_poly, :message, 1, "google.cloud.vision.v1.BoundingPoly"
37
+ repeated :results, :message, 2, "google.cloud.vision.v1.ProductSearchResults.Result"
38
+ repeated :object_annotations, :message, 3, "google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation"
39
+ end
40
+ end
41
+ end
42
+
43
+ module Google
44
+ module Cloud
45
+ module Vision
46
+ module V1
47
+ ProductSearchParams = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ProductSearchParams").msgclass
48
+ ProductSearchResults = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ProductSearchResults").msgclass
49
+ ProductSearchResults::Result = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ProductSearchResults.Result").msgclass
50
+ ProductSearchResults::ObjectAnnotation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ProductSearchResults.ObjectAnnotation").msgclass
51
+ ProductSearchResults::GroupedResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ProductSearchResults.GroupedResult").msgclass
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,208 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/vision/v1/product_search_service.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ require 'google/api/client_pb'
8
+ require 'google/api/field_behavior_pb'
9
+ require 'google/api/resource_pb'
10
+ require 'google/cloud/vision/v1/geometry_pb'
11
+ require 'google/longrunning/operations_pb'
12
+ require 'google/protobuf/empty_pb'
13
+ require 'google/protobuf/field_mask_pb'
14
+ require 'google/protobuf/timestamp_pb'
15
+ require 'google/rpc/status_pb'
16
+ Google::Protobuf::DescriptorPool.generated_pool.build do
17
+ add_file("google/cloud/vision/v1/product_search_service.proto", :syntax => :proto3) do
18
+ add_message "google.cloud.vision.v1.Product" do
19
+ optional :name, :string, 1
20
+ optional :display_name, :string, 2
21
+ optional :description, :string, 3
22
+ optional :product_category, :string, 4
23
+ repeated :product_labels, :message, 5, "google.cloud.vision.v1.Product.KeyValue"
24
+ end
25
+ add_message "google.cloud.vision.v1.Product.KeyValue" do
26
+ optional :key, :string, 1
27
+ optional :value, :string, 2
28
+ end
29
+ add_message "google.cloud.vision.v1.ProductSet" do
30
+ optional :name, :string, 1
31
+ optional :display_name, :string, 2
32
+ optional :index_time, :message, 3, "google.protobuf.Timestamp"
33
+ optional :index_error, :message, 4, "google.rpc.Status"
34
+ end
35
+ add_message "google.cloud.vision.v1.ReferenceImage" do
36
+ optional :name, :string, 1
37
+ optional :uri, :string, 2
38
+ repeated :bounding_polys, :message, 3, "google.cloud.vision.v1.BoundingPoly"
39
+ end
40
+ add_message "google.cloud.vision.v1.CreateProductRequest" do
41
+ optional :parent, :string, 1
42
+ optional :product, :message, 2, "google.cloud.vision.v1.Product"
43
+ optional :product_id, :string, 3
44
+ end
45
+ add_message "google.cloud.vision.v1.ListProductsRequest" do
46
+ optional :parent, :string, 1
47
+ optional :page_size, :int32, 2
48
+ optional :page_token, :string, 3
49
+ end
50
+ add_message "google.cloud.vision.v1.ListProductsResponse" do
51
+ repeated :products, :message, 1, "google.cloud.vision.v1.Product"
52
+ optional :next_page_token, :string, 2
53
+ end
54
+ add_message "google.cloud.vision.v1.GetProductRequest" do
55
+ optional :name, :string, 1
56
+ end
57
+ add_message "google.cloud.vision.v1.UpdateProductRequest" do
58
+ optional :product, :message, 1, "google.cloud.vision.v1.Product"
59
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
60
+ end
61
+ add_message "google.cloud.vision.v1.DeleteProductRequest" do
62
+ optional :name, :string, 1
63
+ end
64
+ add_message "google.cloud.vision.v1.CreateProductSetRequest" do
65
+ optional :parent, :string, 1
66
+ optional :product_set, :message, 2, "google.cloud.vision.v1.ProductSet"
67
+ optional :product_set_id, :string, 3
68
+ end
69
+ add_message "google.cloud.vision.v1.ListProductSetsRequest" do
70
+ optional :parent, :string, 1
71
+ optional :page_size, :int32, 2
72
+ optional :page_token, :string, 3
73
+ end
74
+ add_message "google.cloud.vision.v1.ListProductSetsResponse" do
75
+ repeated :product_sets, :message, 1, "google.cloud.vision.v1.ProductSet"
76
+ optional :next_page_token, :string, 2
77
+ end
78
+ add_message "google.cloud.vision.v1.GetProductSetRequest" do
79
+ optional :name, :string, 1
80
+ end
81
+ add_message "google.cloud.vision.v1.UpdateProductSetRequest" do
82
+ optional :product_set, :message, 1, "google.cloud.vision.v1.ProductSet"
83
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
84
+ end
85
+ add_message "google.cloud.vision.v1.DeleteProductSetRequest" do
86
+ optional :name, :string, 1
87
+ end
88
+ add_message "google.cloud.vision.v1.CreateReferenceImageRequest" do
89
+ optional :parent, :string, 1
90
+ optional :reference_image, :message, 2, "google.cloud.vision.v1.ReferenceImage"
91
+ optional :reference_image_id, :string, 3
92
+ end
93
+ add_message "google.cloud.vision.v1.ListReferenceImagesRequest" do
94
+ optional :parent, :string, 1
95
+ optional :page_size, :int32, 2
96
+ optional :page_token, :string, 3
97
+ end
98
+ add_message "google.cloud.vision.v1.ListReferenceImagesResponse" do
99
+ repeated :reference_images, :message, 1, "google.cloud.vision.v1.ReferenceImage"
100
+ optional :page_size, :int32, 2
101
+ optional :next_page_token, :string, 3
102
+ end
103
+ add_message "google.cloud.vision.v1.GetReferenceImageRequest" do
104
+ optional :name, :string, 1
105
+ end
106
+ add_message "google.cloud.vision.v1.DeleteReferenceImageRequest" do
107
+ optional :name, :string, 1
108
+ end
109
+ add_message "google.cloud.vision.v1.AddProductToProductSetRequest" do
110
+ optional :name, :string, 1
111
+ optional :product, :string, 2
112
+ end
113
+ add_message "google.cloud.vision.v1.RemoveProductFromProductSetRequest" do
114
+ optional :name, :string, 1
115
+ optional :product, :string, 2
116
+ end
117
+ add_message "google.cloud.vision.v1.ListProductsInProductSetRequest" do
118
+ optional :name, :string, 1
119
+ optional :page_size, :int32, 2
120
+ optional :page_token, :string, 3
121
+ end
122
+ add_message "google.cloud.vision.v1.ListProductsInProductSetResponse" do
123
+ repeated :products, :message, 1, "google.cloud.vision.v1.Product"
124
+ optional :next_page_token, :string, 2
125
+ end
126
+ add_message "google.cloud.vision.v1.ImportProductSetsGcsSource" do
127
+ optional :csv_file_uri, :string, 1
128
+ end
129
+ add_message "google.cloud.vision.v1.ImportProductSetsInputConfig" do
130
+ oneof :source do
131
+ optional :gcs_source, :message, 1, "google.cloud.vision.v1.ImportProductSetsGcsSource"
132
+ end
133
+ end
134
+ add_message "google.cloud.vision.v1.ImportProductSetsRequest" do
135
+ optional :parent, :string, 1
136
+ optional :input_config, :message, 2, "google.cloud.vision.v1.ImportProductSetsInputConfig"
137
+ end
138
+ add_message "google.cloud.vision.v1.ImportProductSetsResponse" do
139
+ repeated :reference_images, :message, 1, "google.cloud.vision.v1.ReferenceImage"
140
+ repeated :statuses, :message, 2, "google.rpc.Status"
141
+ end
142
+ add_message "google.cloud.vision.v1.BatchOperationMetadata" do
143
+ optional :state, :enum, 1, "google.cloud.vision.v1.BatchOperationMetadata.State"
144
+ optional :submit_time, :message, 2, "google.protobuf.Timestamp"
145
+ optional :end_time, :message, 3, "google.protobuf.Timestamp"
146
+ end
147
+ add_enum "google.cloud.vision.v1.BatchOperationMetadata.State" do
148
+ value :STATE_UNSPECIFIED, 0
149
+ value :PROCESSING, 1
150
+ value :SUCCESSFUL, 2
151
+ value :FAILED, 3
152
+ value :CANCELLED, 4
153
+ end
154
+ add_message "google.cloud.vision.v1.ProductSetPurgeConfig" do
155
+ optional :product_set_id, :string, 1
156
+ end
157
+ add_message "google.cloud.vision.v1.PurgeProductsRequest" do
158
+ optional :parent, :string, 1
159
+ optional :force, :bool, 4
160
+ oneof :target do
161
+ optional :product_set_purge_config, :message, 2, "google.cloud.vision.v1.ProductSetPurgeConfig"
162
+ optional :delete_orphan_products, :bool, 3
163
+ end
164
+ end
165
+ end
166
+ end
167
+
168
+ module Google
169
+ module Cloud
170
+ module Vision
171
+ module V1
172
+ Product = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.Product").msgclass
173
+ Product::KeyValue = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.Product.KeyValue").msgclass
174
+ ProductSet = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ProductSet").msgclass
175
+ ReferenceImage = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ReferenceImage").msgclass
176
+ CreateProductRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.CreateProductRequest").msgclass
177
+ ListProductsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ListProductsRequest").msgclass
178
+ ListProductsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ListProductsResponse").msgclass
179
+ GetProductRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.GetProductRequest").msgclass
180
+ UpdateProductRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.UpdateProductRequest").msgclass
181
+ DeleteProductRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.DeleteProductRequest").msgclass
182
+ CreateProductSetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.CreateProductSetRequest").msgclass
183
+ ListProductSetsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ListProductSetsRequest").msgclass
184
+ ListProductSetsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ListProductSetsResponse").msgclass
185
+ GetProductSetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.GetProductSetRequest").msgclass
186
+ UpdateProductSetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.UpdateProductSetRequest").msgclass
187
+ DeleteProductSetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.DeleteProductSetRequest").msgclass
188
+ CreateReferenceImageRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.CreateReferenceImageRequest").msgclass
189
+ ListReferenceImagesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ListReferenceImagesRequest").msgclass
190
+ ListReferenceImagesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ListReferenceImagesResponse").msgclass
191
+ GetReferenceImageRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.GetReferenceImageRequest").msgclass
192
+ DeleteReferenceImageRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.DeleteReferenceImageRequest").msgclass
193
+ AddProductToProductSetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.AddProductToProductSetRequest").msgclass
194
+ RemoveProductFromProductSetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.RemoveProductFromProductSetRequest").msgclass
195
+ ListProductsInProductSetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ListProductsInProductSetRequest").msgclass
196
+ ListProductsInProductSetResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ListProductsInProductSetResponse").msgclass
197
+ ImportProductSetsGcsSource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ImportProductSetsGcsSource").msgclass
198
+ ImportProductSetsInputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ImportProductSetsInputConfig").msgclass
199
+ ImportProductSetsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ImportProductSetsRequest").msgclass
200
+ ImportProductSetsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ImportProductSetsResponse").msgclass
201
+ BatchOperationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.BatchOperationMetadata").msgclass
202
+ BatchOperationMetadata::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.BatchOperationMetadata.State").enummodule
203
+ ProductSetPurgeConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.ProductSetPurgeConfig").msgclass
204
+ PurgeProductsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.vision.v1.PurgeProductsRequest").msgclass
205
+ end
206
+ end
207
+ end
208
+ end
@@ -0,0 +1,232 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/vision/v1/product_search_service.proto for package 'google.cloud.vision.v1'
3
+ # Original file comments:
4
+ # Copyright 2019 Google LLC.
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+ #
19
+
20
+ require 'grpc'
21
+ require 'google/cloud/vision/v1/product_search_service_pb'
22
+
23
+ module Google
24
+ module Cloud
25
+ module Vision
26
+ module V1
27
+ module ProductSearch
28
+ # Manages Products and ProductSets of reference images for use in product
29
+ # search. It uses the following resource model:
30
+ #
31
+ # - The API has a collection of [ProductSet][google.cloud.vision.v1.ProductSet] resources, named
32
+ # `projects/*/locations/*/productSets/*`, which acts as a way to put different
33
+ # products into groups to limit identification.
34
+ #
35
+ # In parallel,
36
+ #
37
+ # - The API has a collection of [Product][google.cloud.vision.v1.Product] resources, named
38
+ # `projects/*/locations/*/products/*`
39
+ #
40
+ # - Each [Product][google.cloud.vision.v1.Product] has a collection of [ReferenceImage][google.cloud.vision.v1.ReferenceImage] resources, named
41
+ # `projects/*/locations/*/products/*/referenceImages/*`
42
+ class Service
43
+
44
+ include GRPC::GenericService
45
+
46
+ self.marshal_class_method = :encode
47
+ self.unmarshal_class_method = :decode
48
+ self.service_name = 'google.cloud.vision.v1.ProductSearch'
49
+
50
+ # Creates and returns a new ProductSet resource.
51
+ #
52
+ # Possible errors:
53
+ #
54
+ # * Returns INVALID_ARGUMENT if display_name is missing, or is longer than
55
+ # 4096 characters.
56
+ rpc :CreateProductSet, CreateProductSetRequest, ProductSet
57
+ # Lists ProductSets in an unspecified order.
58
+ #
59
+ # Possible errors:
60
+ #
61
+ # * Returns INVALID_ARGUMENT if page_size is greater than 100, or less
62
+ # than 1.
63
+ rpc :ListProductSets, ListProductSetsRequest, ListProductSetsResponse
64
+ # Gets information associated with a ProductSet.
65
+ #
66
+ # Possible errors:
67
+ #
68
+ # * Returns NOT_FOUND if the ProductSet does not exist.
69
+ rpc :GetProductSet, GetProductSetRequest, ProductSet
70
+ # Makes changes to a ProductSet resource.
71
+ # Only display_name can be updated currently.
72
+ #
73
+ # Possible errors:
74
+ #
75
+ # * Returns NOT_FOUND if the ProductSet does not exist.
76
+ # * Returns INVALID_ARGUMENT if display_name is present in update_mask but
77
+ # missing from the request or longer than 4096 characters.
78
+ rpc :UpdateProductSet, UpdateProductSetRequest, ProductSet
79
+ # Permanently deletes a ProductSet. Products and ReferenceImages in the
80
+ # ProductSet are not deleted.
81
+ #
82
+ # The actual image files are not deleted from Google Cloud Storage.
83
+ rpc :DeleteProductSet, DeleteProductSetRequest, Google::Protobuf::Empty
84
+ # Creates and returns a new product resource.
85
+ #
86
+ # Possible errors:
87
+ #
88
+ # * Returns INVALID_ARGUMENT if display_name is missing or longer than 4096
89
+ # characters.
90
+ # * Returns INVALID_ARGUMENT if description is longer than 4096 characters.
91
+ # * Returns INVALID_ARGUMENT if product_category is missing or invalid.
92
+ rpc :CreateProduct, CreateProductRequest, Product
93
+ # Lists products in an unspecified order.
94
+ #
95
+ # Possible errors:
96
+ #
97
+ # * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1.
98
+ rpc :ListProducts, ListProductsRequest, ListProductsResponse
99
+ # Gets information associated with a Product.
100
+ #
101
+ # Possible errors:
102
+ #
103
+ # * Returns NOT_FOUND if the Product does not exist.
104
+ rpc :GetProduct, GetProductRequest, Product
105
+ # Makes changes to a Product resource.
106
+ # Only the `display_name`, `description`, and `labels` fields can be updated
107
+ # right now.
108
+ #
109
+ # If labels are updated, the change will not be reflected in queries until
110
+ # the next index time.
111
+ #
112
+ # Possible errors:
113
+ #
114
+ # * Returns NOT_FOUND if the Product does not exist.
115
+ # * Returns INVALID_ARGUMENT if display_name is present in update_mask but is
116
+ # missing from the request or longer than 4096 characters.
117
+ # * Returns INVALID_ARGUMENT if description is present in update_mask but is
118
+ # longer than 4096 characters.
119
+ # * Returns INVALID_ARGUMENT if product_category is present in update_mask.
120
+ rpc :UpdateProduct, UpdateProductRequest, Product
121
+ # Permanently deletes a product and its reference images.
122
+ #
123
+ # Metadata of the product and all its images will be deleted right away, but
124
+ # search queries against ProductSets containing the product may still work
125
+ # until all related caches are refreshed.
126
+ rpc :DeleteProduct, DeleteProductRequest, Google::Protobuf::Empty
127
+ # Creates and returns a new ReferenceImage resource.
128
+ #
129
+ # The `bounding_poly` field is optional. If `bounding_poly` is not specified,
130
+ # the system will try to detect regions of interest in the image that are
131
+ # compatible with the product_category on the parent product. If it is
132
+ # specified, detection is ALWAYS skipped. The system converts polygons into
133
+ # non-rotated rectangles.
134
+ #
135
+ # Note that the pipeline will resize the image if the image resolution is too
136
+ # large to process (above 50MP).
137
+ #
138
+ # Possible errors:
139
+ #
140
+ # * Returns INVALID_ARGUMENT if the image_uri is missing or longer than 4096
141
+ # characters.
142
+ # * Returns INVALID_ARGUMENT if the product does not exist.
143
+ # * Returns INVALID_ARGUMENT if bounding_poly is not provided, and nothing
144
+ # compatible with the parent product's product_category is detected.
145
+ # * Returns INVALID_ARGUMENT if bounding_poly contains more than 10 polygons.
146
+ rpc :CreateReferenceImage, CreateReferenceImageRequest, ReferenceImage
147
+ # Permanently deletes a reference image.
148
+ #
149
+ # The image metadata will be deleted right away, but search queries
150
+ # against ProductSets containing the image may still work until all related
151
+ # caches are refreshed.
152
+ #
153
+ # The actual image files are not deleted from Google Cloud Storage.
154
+ rpc :DeleteReferenceImage, DeleteReferenceImageRequest, Google::Protobuf::Empty
155
+ # Lists reference images.
156
+ #
157
+ # Possible errors:
158
+ #
159
+ # * Returns NOT_FOUND if the parent product does not exist.
160
+ # * Returns INVALID_ARGUMENT if the page_size is greater than 100, or less
161
+ # than 1.
162
+ rpc :ListReferenceImages, ListReferenceImagesRequest, ListReferenceImagesResponse
163
+ # Gets information associated with a ReferenceImage.
164
+ #
165
+ # Possible errors:
166
+ #
167
+ # * Returns NOT_FOUND if the specified image does not exist.
168
+ rpc :GetReferenceImage, GetReferenceImageRequest, ReferenceImage
169
+ # Adds a Product to the specified ProductSet. If the Product is already
170
+ # present, no change is made.
171
+ #
172
+ # One Product can be added to at most 100 ProductSets.
173
+ #
174
+ # Possible errors:
175
+ #
176
+ # * Returns NOT_FOUND if the Product or the ProductSet doesn't exist.
177
+ rpc :AddProductToProductSet, AddProductToProductSetRequest, Google::Protobuf::Empty
178
+ # Removes a Product from the specified ProductSet.
179
+ rpc :RemoveProductFromProductSet, RemoveProductFromProductSetRequest, Google::Protobuf::Empty
180
+ # Lists the Products in a ProductSet, in an unspecified order. If the
181
+ # ProductSet does not exist, the products field of the response will be
182
+ # empty.
183
+ #
184
+ # Possible errors:
185
+ #
186
+ # * Returns INVALID_ARGUMENT if page_size is greater than 100 or less than 1.
187
+ rpc :ListProductsInProductSet, ListProductsInProductSetRequest, ListProductsInProductSetResponse
188
+ # Asynchronous API that imports a list of reference images to specified
189
+ # product sets based on a list of image information.
190
+ #
191
+ # The [google.longrunning.Operation][google.longrunning.Operation] API can be used to keep track of the
192
+ # progress and results of the request.
193
+ # `Operation.metadata` contains `BatchOperationMetadata`. (progress)
194
+ # `Operation.response` contains `ImportProductSetsResponse`. (results)
195
+ #
196
+ # The input source of this method is a csv file on Google Cloud Storage.
197
+ # For the format of the csv file please see
198
+ # [ImportProductSetsGcsSource.csv_file_uri][google.cloud.vision.v1.ImportProductSetsGcsSource.csv_file_uri].
199
+ rpc :ImportProductSets, ImportProductSetsRequest, Google::Longrunning::Operation
200
+ # Asynchronous API to delete all Products in a ProductSet or all Products
201
+ # that are in no ProductSet.
202
+ #
203
+ # If a Product is a member of the specified ProductSet in addition to other
204
+ # ProductSets, the Product will still be deleted.
205
+ #
206
+ # It is recommended to not delete the specified ProductSet until after this
207
+ # operation has completed. It is also recommended to not add any of the
208
+ # Products involved in the batch delete to a new ProductSet while this
209
+ # operation is running because those Products may still end up deleted.
210
+ #
211
+ # It's not possible to undo the PurgeProducts operation. Therefore, it is
212
+ # recommended to keep the csv files used in ImportProductSets (if that was
213
+ # how you originally built the Product Set) before starting PurgeProducts, in
214
+ # case you need to re-import the data after deletion.
215
+ #
216
+ # If the plan is to purge all of the Products from a ProductSet and then
217
+ # re-use the empty ProductSet to re-import new Products into the empty
218
+ # ProductSet, you must wait until the PurgeProducts operation has finished
219
+ # for that ProductSet.
220
+ #
221
+ # The [google.longrunning.Operation][google.longrunning.Operation] API can be used to keep track of the
222
+ # progress and results of the request.
223
+ # `Operation.metadata` contains `BatchOperationMetadata`. (progress)
224
+ rpc :PurgeProducts, PurgeProductsRequest, Google::Longrunning::Operation
225
+ end
226
+
227
+ Stub = Service.rpc_stub_class
228
+ end
229
+ end
230
+ end
231
+ end
232
+ end