google-cloud-translate-v3 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -82,7 +82,7 @@ module Google
82
82
  # Create credentials
83
83
  credentials = @config.credentials
84
84
  credentials ||= Credentials.default scope: @config.scope
85
- if credentials.is_a?(String) || credentials.is_a?(Hash)
85
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
86
86
  credentials = Credentials.new credentials, scope: @config.scope
87
87
  end
88
88
  @quota_project_id = @config.quota_project
@@ -169,7 +169,9 @@ module Google
169
169
  options.apply_defaults timeout: @config.rpcs.list_operations.timeout,
170
170
  metadata: metadata,
171
171
  retry_policy: @config.rpcs.list_operations.retry_policy
172
- options.apply_defaults metadata: @config.metadata,
172
+
173
+ options.apply_defaults timeout: @config.timeout,
174
+ metadata: @config.metadata,
173
175
  retry_policy: @config.retry_policy
174
176
 
175
177
  @operations_stub.call_rpc :list_operations, request, options: options do |response, operation|
@@ -239,7 +241,9 @@ module Google
239
241
  options.apply_defaults timeout: @config.rpcs.get_operation.timeout,
240
242
  metadata: metadata,
241
243
  retry_policy: @config.rpcs.get_operation.retry_policy
242
- options.apply_defaults metadata: @config.metadata,
244
+
245
+ options.apply_defaults timeout: @config.timeout,
246
+ metadata: @config.metadata,
243
247
  retry_policy: @config.retry_policy
244
248
 
245
249
  @operations_stub.call_rpc :get_operation, request, options: options do |response, operation|
@@ -309,7 +313,9 @@ module Google
309
313
  options.apply_defaults timeout: @config.rpcs.delete_operation.timeout,
310
314
  metadata: metadata,
311
315
  retry_policy: @config.rpcs.delete_operation.retry_policy
312
- options.apply_defaults metadata: @config.metadata,
316
+
317
+ options.apply_defaults timeout: @config.timeout,
318
+ metadata: @config.metadata,
313
319
  retry_policy: @config.retry_policy
314
320
 
315
321
  @operations_stub.call_rpc :delete_operation, request, options: options do |response, operation|
@@ -384,7 +390,9 @@ module Google
384
390
  options.apply_defaults timeout: @config.rpcs.cancel_operation.timeout,
385
391
  metadata: metadata,
386
392
  retry_policy: @config.rpcs.cancel_operation.retry_policy
387
- options.apply_defaults metadata: @config.metadata,
393
+
394
+ options.apply_defaults timeout: @config.timeout,
395
+ metadata: @config.metadata,
388
396
  retry_policy: @config.retry_policy
389
397
 
390
398
  @operations_stub.call_rpc :cancel_operation, request, options: options do |response, operation|
@@ -396,9 +404,9 @@ module Google
396
404
  end
397
405
 
398
406
  ##
399
- # Waits for the specified long-running operation until it is done or reaches
400
- # at most a specified timeout, returning the latest state. If the operation
401
- # is already done, the latest state is immediately returned. If the timeout
407
+ # Waits until the specified long-running operation is done or reaches at most
408
+ # a specified timeout, returning the latest state. If the operation is
409
+ # already done, the latest state is immediately returned. If the timeout
402
410
  # specified is greater than the default HTTP/RPC timeout, the HTTP/RPC
403
411
  # timeout is used. If the server does not support this method, it returns
404
412
  # `google.rpc.Code.UNIMPLEMENTED`.
@@ -456,7 +464,9 @@ module Google
456
464
  options.apply_defaults timeout: @config.rpcs.wait_operation.timeout,
457
465
  metadata: metadata,
458
466
  retry_policy: @config.rpcs.wait_operation.retry_policy
459
- options.apply_defaults metadata: @config.metadata,
467
+
468
+ options.apply_defaults timeout: @config.timeout,
469
+ metadata: @config.metadata,
460
470
  retry_policy: @config.retry_policy
461
471
 
462
472
  @operations_stub.call_rpc :wait_operation, request, options: options do |response, operation|
@@ -481,22 +491,21 @@ module Google
481
491
  # Configuration can be applied globally to all clients, or to a single client
482
492
  # on construction.
483
493
  #
484
- # # Examples
485
- #
486
- # To modify the global config, setting the timeout for list_operations
487
- # to 20 seconds, and all remaining timeouts to 10 seconds:
488
- #
489
- # ::Google::Longrunning::Operations::Client.configure do |config|
490
- # config.timeout = 10.0
491
- # config.rpcs.list_operations.timeout = 20.0
492
- # end
493
- #
494
- # To apply the above configuration only to a new client:
495
- #
496
- # client = ::Google::Longrunning::Operations::Client.new do |config|
497
- # config.timeout = 10.0
498
- # config.rpcs.list_operations.timeout = 20.0
499
- # end
494
+ # @example
495
+ #
496
+ # # Modify the global config, setting the timeout for
497
+ # # list_operations to 20 seconds,
498
+ # # and all remaining timeouts to 10 seconds.
499
+ # ::Google::Longrunning::Operations::Client.configure do |config|
500
+ # config.timeout = 10.0
501
+ # config.rpcs.list_operations.timeout = 20.0
502
+ # end
503
+ #
504
+ # # Apply the above configuration only to a new client.
505
+ # client = ::Google::Longrunning::Operations::Client.new do |config|
506
+ # config.timeout = 10.0
507
+ # config.rpcs.list_operations.timeout = 20.0
508
+ # end
500
509
  #
501
510
  # @!attribute [rw] endpoint
502
511
  # The hostname or hostname:port of the service endpoint.
@@ -8,7 +8,9 @@ require 'google/api/client_pb'
8
8
  require 'google/api/field_behavior_pb'
9
9
  require 'google/api/resource_pb'
10
10
  require 'google/longrunning/operations_pb'
11
+ require 'google/protobuf/empty_pb'
11
12
  require 'google/protobuf/timestamp_pb'
13
+ require 'google/rpc/status_pb'
12
14
  Google::Protobuf::DescriptorPool.generated_pool.build do
13
15
  add_file("google/cloud/translate/v3/translation_service.proto", :syntax => :proto3) do
14
16
  add_message "google.cloud.translation.v3.TranslateTextGlossaryConfig" do
@@ -82,6 +84,40 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
82
84
  optional :gcs_destination, :message, 1, "google.cloud.translation.v3.GcsDestination"
83
85
  end
84
86
  end
87
+ add_message "google.cloud.translation.v3.DocumentInputConfig" do
88
+ optional :mime_type, :string, 4
89
+ oneof :source do
90
+ optional :content, :bytes, 1
91
+ optional :gcs_source, :message, 2, "google.cloud.translation.v3.GcsSource"
92
+ end
93
+ end
94
+ add_message "google.cloud.translation.v3.DocumentOutputConfig" do
95
+ optional :mime_type, :string, 3
96
+ oneof :destination do
97
+ optional :gcs_destination, :message, 1, "google.cloud.translation.v3.GcsDestination"
98
+ end
99
+ end
100
+ add_message "google.cloud.translation.v3.TranslateDocumentRequest" do
101
+ optional :parent, :string, 1
102
+ optional :source_language_code, :string, 2
103
+ optional :target_language_code, :string, 3
104
+ optional :document_input_config, :message, 4, "google.cloud.translation.v3.DocumentInputConfig"
105
+ optional :document_output_config, :message, 5, "google.cloud.translation.v3.DocumentOutputConfig"
106
+ optional :model, :string, 6
107
+ optional :glossary_config, :message, 7, "google.cloud.translation.v3.TranslateTextGlossaryConfig"
108
+ map :labels, :string, :string, 8
109
+ end
110
+ add_message "google.cloud.translation.v3.DocumentTranslation" do
111
+ repeated :byte_stream_outputs, :bytes, 1
112
+ optional :mime_type, :string, 2
113
+ optional :detected_language_code, :string, 3
114
+ end
115
+ add_message "google.cloud.translation.v3.TranslateDocumentResponse" do
116
+ optional :document_translation, :message, 1, "google.cloud.translation.v3.DocumentTranslation"
117
+ optional :glossary_document_translation, :message, 2, "google.cloud.translation.v3.DocumentTranslation"
118
+ optional :model, :string, 3
119
+ optional :glossary_config, :message, 4, "google.cloud.translation.v3.TranslateTextGlossaryConfig"
120
+ end
85
121
  add_message "google.cloud.translation.v3.BatchTranslateTextRequest" do
86
122
  optional :parent, :string, 1
87
123
  optional :source_language_code, :string, 2
@@ -188,6 +224,58 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
188
224
  optional :submit_time, :message, 2, "google.protobuf.Timestamp"
189
225
  optional :end_time, :message, 3, "google.protobuf.Timestamp"
190
226
  end
227
+ add_message "google.cloud.translation.v3.BatchTranslateDocumentRequest" do
228
+ optional :parent, :string, 1
229
+ optional :source_language_code, :string, 2
230
+ repeated :target_language_codes, :string, 3
231
+ repeated :input_configs, :message, 4, "google.cloud.translation.v3.BatchDocumentInputConfig"
232
+ optional :output_config, :message, 5, "google.cloud.translation.v3.BatchDocumentOutputConfig"
233
+ map :models, :string, :string, 6
234
+ map :glossaries, :string, :message, 7, "google.cloud.translation.v3.TranslateTextGlossaryConfig"
235
+ map :format_conversions, :string, :string, 8
236
+ end
237
+ add_message "google.cloud.translation.v3.BatchDocumentInputConfig" do
238
+ oneof :source do
239
+ optional :gcs_source, :message, 1, "google.cloud.translation.v3.GcsSource"
240
+ end
241
+ end
242
+ add_message "google.cloud.translation.v3.BatchDocumentOutputConfig" do
243
+ oneof :destination do
244
+ optional :gcs_destination, :message, 1, "google.cloud.translation.v3.GcsDestination"
245
+ end
246
+ end
247
+ add_message "google.cloud.translation.v3.BatchTranslateDocumentResponse" do
248
+ optional :total_pages, :int64, 1
249
+ optional :translated_pages, :int64, 2
250
+ optional :failed_pages, :int64, 3
251
+ optional :total_billable_pages, :int64, 4
252
+ optional :total_characters, :int64, 5
253
+ optional :translated_characters, :int64, 6
254
+ optional :failed_characters, :int64, 7
255
+ optional :total_billable_characters, :int64, 8
256
+ optional :submit_time, :message, 9, "google.protobuf.Timestamp"
257
+ optional :end_time, :message, 10, "google.protobuf.Timestamp"
258
+ end
259
+ add_message "google.cloud.translation.v3.BatchTranslateDocumentMetadata" do
260
+ optional :state, :enum, 1, "google.cloud.translation.v3.BatchTranslateDocumentMetadata.State"
261
+ optional :total_pages, :int64, 2
262
+ optional :translated_pages, :int64, 3
263
+ optional :failed_pages, :int64, 4
264
+ optional :total_billable_pages, :int64, 5
265
+ optional :total_characters, :int64, 6
266
+ optional :translated_characters, :int64, 7
267
+ optional :failed_characters, :int64, 8
268
+ optional :total_billable_characters, :int64, 9
269
+ optional :submit_time, :message, 10, "google.protobuf.Timestamp"
270
+ end
271
+ add_enum "google.cloud.translation.v3.BatchTranslateDocumentMetadata.State" do
272
+ value :STATE_UNSPECIFIED, 0
273
+ value :RUNNING, 1
274
+ value :SUCCEEDED, 2
275
+ value :FAILED, 3
276
+ value :CANCELLING, 4
277
+ value :CANCELLED, 5
278
+ end
191
279
  end
192
280
  end
193
281
 
@@ -209,6 +297,11 @@ module Google
209
297
  InputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.InputConfig").msgclass
210
298
  GcsDestination = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.GcsDestination").msgclass
211
299
  OutputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.OutputConfig").msgclass
300
+ DocumentInputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.DocumentInputConfig").msgclass
301
+ DocumentOutputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.DocumentOutputConfig").msgclass
302
+ TranslateDocumentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.TranslateDocumentRequest").msgclass
303
+ DocumentTranslation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.DocumentTranslation").msgclass
304
+ TranslateDocumentResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.TranslateDocumentResponse").msgclass
212
305
  BatchTranslateTextRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchTranslateTextRequest").msgclass
213
306
  BatchTranslateMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchTranslateMetadata").msgclass
214
307
  BatchTranslateMetadata::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchTranslateMetadata.State").enummodule
@@ -227,6 +320,12 @@ module Google
227
320
  DeleteGlossaryMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.DeleteGlossaryMetadata").msgclass
228
321
  DeleteGlossaryMetadata::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.DeleteGlossaryMetadata.State").enummodule
229
322
  DeleteGlossaryResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.DeleteGlossaryResponse").msgclass
323
+ BatchTranslateDocumentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchTranslateDocumentRequest").msgclass
324
+ BatchDocumentInputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchDocumentInputConfig").msgclass
325
+ BatchDocumentOutputConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchDocumentOutputConfig").msgclass
326
+ BatchTranslateDocumentResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchTranslateDocumentResponse").msgclass
327
+ BatchTranslateDocumentMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchTranslateDocumentMetadata").msgclass
328
+ BatchTranslateDocumentMetadata::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.translation.v3.BatchTranslateDocumentMetadata.State").enummodule
230
329
  end
231
330
  end
232
331
  end
@@ -1,7 +1,7 @@
1
1
  # Generated by the protocol buffer compiler. DO NOT EDIT!
2
2
  # Source: google/cloud/translate/v3/translation_service.proto for package 'Google.Cloud.Translate.V3'
3
3
  # Original file comments:
4
- # Copyright 2019 Google LLC.
4
+ # Copyright 2021 Google LLC
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
7
7
  # you may not use this file except in compliance with the License.
@@ -15,7 +15,6 @@
15
15
  # See the License for the specific language governing permissions and
16
16
  # limitations under the License.
17
17
  #
18
- #
19
18
 
20
19
  require 'grpc'
21
20
  require 'google/cloud/translate/v3/translation_service_pb'
@@ -42,6 +41,8 @@ module Google
42
41
  rpc :DetectLanguage, ::Google::Cloud::Translate::V3::DetectLanguageRequest, ::Google::Cloud::Translate::V3::DetectLanguageResponse
43
42
  # Returns a list of supported languages for translation.
44
43
  rpc :GetSupportedLanguages, ::Google::Cloud::Translate::V3::GetSupportedLanguagesRequest, ::Google::Cloud::Translate::V3::SupportedLanguages
44
+ # Translates documents in synchronous mode.
45
+ rpc :TranslateDocument, ::Google::Cloud::Translate::V3::TranslateDocumentRequest, ::Google::Cloud::Translate::V3::TranslateDocumentResponse
45
46
  # Translates a large volume of text in asynchronous batch mode.
46
47
  # This function provides real-time output as the inputs are being processed.
47
48
  # If caller cancels a request, the partial results (for an input file, it's
@@ -50,6 +51,14 @@ module Google
50
51
  # This call returns immediately and you can
51
52
  # use google.longrunning.Operation.name to poll the status of the call.
52
53
  rpc :BatchTranslateText, ::Google::Cloud::Translate::V3::BatchTranslateTextRequest, ::Google::Longrunning::Operation
54
+ # Translates a large volume of document in asynchronous batch mode.
55
+ # This function provides real-time output as the inputs are being processed.
56
+ # If caller cancels a request, the partial results (for an input file, it's
57
+ # all or nothing) may still be available on the specified output location.
58
+ #
59
+ # This call returns immediately and you can use
60
+ # google.longrunning.Operation.name to poll the status of the call.
61
+ rpc :BatchTranslateDocument, ::Google::Cloud::Translate::V3::BatchTranslateDocumentRequest, ::Google::Longrunning::Operation
53
62
  # Creates a glossary and returns the long-running operation. Returns
54
63
  # NOT_FOUND, if the project doesn't exist.
55
64
  rpc :CreateGlossary, ::Google::Cloud::Translate::V3::CreateGlossaryRequest, ::Google::Longrunning::Operation
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Translate
23
23
  module V3
24
- VERSION = "0.3.0"
24
+ VERSION = "0.4.0"
25
25
  end
26
26
  end
27
27
  end
@@ -57,9 +57,15 @@ module Google
57
57
 
58
58
  # Denotes that a (repeated) field is an unordered list.
59
59
  # This indicates that the service may provide the elements of the list
60
- # in any arbitrary order, rather than the order the user originally
60
+ # in any arbitrary order, rather than the order the user originally
61
61
  # provided. Additionally, the list's order may or may not be stable.
62
62
  UNORDERED_LIST = 6
63
+
64
+ # Denotes that this field returns a non-empty default value if not set.
65
+ # This indicates that if the user provides the empty value in a request,
66
+ # a non-empty value will be returned. The user will not be aware of what
67
+ # non-empty value to expect.
68
+ NON_EMPTY_DEFAULT = 7
63
69
  end
64
70
  end
65
71
  end
@@ -25,8 +25,12 @@ module Google
25
25
  # and defines options for applying that glossary.
26
26
  # @!attribute [rw] glossary
27
27
  # @return [::String]
28
- # Required. Specifies the glossary used for this translation. Use
29
- # this format: projects/*/locations/*/glossaries/*
28
+ # Required. The `glossary` to be applied for this translation.
29
+ #
30
+ # The format depends on glossary:
31
+ #
32
+ # - User provided custom glossary:
33
+ # `projects/{project-number-or-id}/locations/{location-id}/glossaries/{glossary-id}`
30
34
  # @!attribute [rw] ignore_case
31
35
  # @return [::Boolean]
32
36
  # Optional. Indicates match is case-insensitive.
@@ -40,7 +44,8 @@ module Google
40
44
  # @!attribute [rw] contents
41
45
  # @return [::Array<::String>]
42
46
  # Required. The content of the input in string format.
43
- # We recommend the total content be less than 30k codepoints.
47
+ # We recommend the total content be less than 30k codepoints. The max length
48
+ # of this field is 1024.
44
49
  # Use BatchTranslateText for larger text.
45
50
  # @!attribute [rw] mime_type
46
51
  # @return [::String]
@@ -84,14 +89,13 @@ module Google
84
89
  #
85
90
  # - General (built-in) models:
86
91
  # `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
87
- # `projects/{project-number-or-id}/locations/{location-id}/models/general/base`
88
92
  #
89
93
  #
90
94
  # For global (non-regionalized) requests, use `location-id` `global`.
91
95
  # For example,
92
96
  # `projects/{project-number-or-id}/locations/global/models/general/nmt`.
93
97
  #
94
- # If missing, the system decides which google base model to use.
98
+ # If not provided, the default Google model (NMT) will be used.
95
99
  # @!attribute [rw] glossary_config
96
100
  # @return [::Google::Cloud::Translate::V3::TranslateTextGlossaryConfig]
97
101
  # Optional. Glossary to be applied. The glossary must be
@@ -106,7 +110,8 @@ module Google
106
110
  # characters, underscores and dashes. International characters are allowed.
107
111
  # Label values are optional. Label keys must start with a letter.
108
112
  #
109
- # See https://cloud.google.com/translate/docs/labels for more information.
113
+ # See https://cloud.google.com/translate/docs/advanced/labels for more
114
+ # information.
110
115
  class TranslateTextRequest
111
116
  include ::Google::Protobuf::MessageExts
112
117
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -142,6 +147,8 @@ module Google
142
147
  # @!attribute [rw] translated_text
143
148
  # @return [::String]
144
149
  # Text translated into the target language.
150
+ # If an error occurs during translation, this field might be excluded from
151
+ # the response.
145
152
  # @!attribute [rw] model
146
153
  # @return [::String]
147
154
  # Only present when `model` is present in the request.
@@ -207,7 +214,8 @@ module Google
207
214
  # characters, underscores and dashes. International characters are allowed.
208
215
  # Label values are optional. Label keys must start with a letter.
209
216
  #
210
- # See https://cloud.google.com/translate/docs/labels for more information.
217
+ # See https://cloud.google.com/translate/docs/advanced/labels for more
218
+ # information.
211
219
  class DetectLanguageRequest
212
220
  include ::Google::Protobuf::MessageExts
213
221
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -238,8 +246,8 @@ module Google
238
246
  # The response message for language detection.
239
247
  # @!attribute [rw] languages
240
248
  # @return [::Array<::Google::Cloud::Translate::V3::DetectedLanguage>]
241
- # A list of detected languages sorted by detection confidence in descending
242
- # order. The most probable language first.
249
+ # The most probable language detected by the Translation API. For each
250
+ # request, the Translation API will always return only one result.
243
251
  class DetectLanguageResponse
244
252
  include ::Google::Protobuf::MessageExts
245
253
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -277,11 +285,10 @@ module Google
277
285
  #
278
286
  # - General (built-in) models:
279
287
  # `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
280
- # `projects/{project-number-or-id}/locations/{location-id}/models/general/base`
281
288
  #
282
289
  #
283
290
  # Returns languages supported by the specified model.
284
- # If missing, we get supported languages of Google general base (PBMT) model.
291
+ # If missing, we get supported languages of Google general NMT model.
285
292
  class GetSupportedLanguagesRequest
286
293
  include ::Google::Protobuf::MessageExts
287
294
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -364,9 +371,11 @@ module Google
364
371
  # The Google Cloud Storage location for the output content.
365
372
  # @!attribute [rw] output_uri_prefix
366
373
  # @return [::String]
367
- # Required. There must be no files under 'output_uri_prefix'.
368
- # 'output_uri_prefix' must end with "/" and start with "gs://", otherwise an
369
- # INVALID_ARGUMENT (400) error is returned.
374
+ # Required. The bucket used in 'output_uri_prefix' must exist and there must
375
+ # be no files under 'output_uri_prefix'. 'output_uri_prefix' must end with
376
+ # "/" and start with "gs://". One 'output_uri_prefix' can only be used by one
377
+ # batch translation job at a time. Otherwise an INVALID_ARGUMENT (400) error
378
+ # is returned.
370
379
  class GcsDestination
371
380
  include ::Google::Protobuf::MessageExts
372
381
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -407,8 +416,13 @@ module Google
407
416
  # processed and ready to be consumed (that is, no partial output file is
408
417
  # written).
409
418
  #
419
+ # Since index.csv will be keeping updated during the process, please make
420
+ # sure there is no custom retention policy applied on the output bucket
421
+ # that may avoid file updating.
422
+ # (https://cloud.google.com/storage/docs/bucket-lock?hl=en#retention-policy)
423
+ #
410
424
  # The format of translations_file (for target language code 'trg') is:
411
- # `gs://translation_test/a_b_c_'trg'_translations.[extension]`
425
+ # gs://translation_test/a_b_c_'trg'_translations.[extension]
412
426
  #
413
427
  # If the input file extension is tsv, the output has the following
414
428
  # columns:
@@ -425,10 +439,10 @@ module Google
425
439
  # If input file extension is a txt or html, the translation is directly
426
440
  # written to the output file. If glossary is requested, a separate
427
441
  # glossary_translations_file has format of
428
- # `gs://translation_test/a_b_c_'trg'_glossary_translations.[extension]`
442
+ # gs://translation_test/a_b_c_'trg'_glossary_translations.[extension]
429
443
  #
430
444
  # The format of errors file (for target language code 'trg') is:
431
- # `gs://translation_test/a_b_c_'trg'_errors.[extension]`
445
+ # gs://translation_test/a_b_c_'trg'_errors.[extension]
432
446
  #
433
447
  # If the input file extension is tsv, errors_file contains the following:
434
448
  # Column 1: ID of the request provided in the input, if it's not
@@ -440,12 +454,229 @@ module Google
440
454
  #
441
455
  # If the input file extension is txt or html, glossary_error_file will be
442
456
  # generated that contains error details. glossary_error_file has format of
443
- # `gs://translation_test/a_b_c_'trg'_glossary_errors.[extension]`
457
+ # gs://translation_test/a_b_c_'trg'_glossary_errors.[extension]
444
458
  class OutputConfig
445
459
  include ::Google::Protobuf::MessageExts
446
460
  extend ::Google::Protobuf::MessageExts::ClassMethods
447
461
  end
448
462
 
463
+ # A document translation request input config.
464
+ # @!attribute [rw] content
465
+ # @return [::String]
466
+ # Document's content represented as a stream of bytes.
467
+ # @!attribute [rw] gcs_source
468
+ # @return [::Google::Cloud::Translate::V3::GcsSource]
469
+ # Google Cloud Storage location. This must be a single file.
470
+ # For example: gs://example_bucket/example_file.pdf
471
+ # @!attribute [rw] mime_type
472
+ # @return [::String]
473
+ # Specifies the input document's mime_type.
474
+ #
475
+ # If not specified it will be determined using the file extension for
476
+ # gcs_source provided files. For a file provided through bytes content the
477
+ # mime_type must be provided.
478
+ # Currently supported mime types are:
479
+ # - application/pdf
480
+ # - application/vnd.openxmlformats-officedocument.wordprocessingml.document
481
+ # - application/vnd.openxmlformats-officedocument.presentationml.presentation
482
+ # - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
483
+ class DocumentInputConfig
484
+ include ::Google::Protobuf::MessageExts
485
+ extend ::Google::Protobuf::MessageExts::ClassMethods
486
+ end
487
+
488
+ # A document translation request output config.
489
+ # @!attribute [rw] gcs_destination
490
+ # @return [::Google::Cloud::Translate::V3::GcsDestination]
491
+ # Optional. Google Cloud Storage destination for the translation output,
492
+ # e.g., `gs://my_bucket/my_directory/`.
493
+ #
494
+ # The destination directory provided does not have to be empty, but the
495
+ # bucket must exist. If a file with the same name as the output file
496
+ # already exists in the destination an error will be returned.
497
+ #
498
+ # For a DocumentInputConfig.contents provided document, the output file
499
+ # will have the name "output_[trg]_translations.[ext]", where
500
+ # - [trg] corresponds to the translated file's language code,
501
+ # - [ext] corresponds to the translated file's extension according to its
502
+ # mime type.
503
+ #
504
+ #
505
+ # For a DocumentInputConfig.gcs_uri provided document, the output file will
506
+ # have a name according to its URI. For example: an input file with URI:
507
+ # "gs://a/b/c.[extension]" stored in a gcs_destination bucket with name
508
+ # "my_bucket" will have an output URI:
509
+ # "gs://my_bucket/a_b_c_[trg]_translations.[ext]", where
510
+ # - [trg] corresponds to the translated file's language code,
511
+ # - [ext] corresponds to the translated file's extension according to its
512
+ # mime type.
513
+ #
514
+ #
515
+ # If the document was directly provided through the request, then the
516
+ # output document will have the format:
517
+ # "gs://my_bucket/translated_document_[trg]_translations.[ext], where
518
+ # - [trg] corresponds to the translated file's language code,
519
+ # - [ext] corresponds to the translated file's extension according to its
520
+ # mime type.
521
+ #
522
+ # If a glossary was provided, then the output URI for the glossary
523
+ # translation will be equal to the default output URI but have
524
+ # `glossary_translations` instead of `translations`. For the previous
525
+ # example, its glossary URI would be:
526
+ # "gs://my_bucket/a_b_c_[trg]_glossary_translations.[ext]".
527
+ #
528
+ # Thus the max number of output files will be 2 (Translated document,
529
+ # Glossary translated document).
530
+ #
531
+ # Callers should expect no partial outputs. If there is any error during
532
+ # document translation, no output will be stored in the Cloud Storage
533
+ # bucket.
534
+ # @!attribute [rw] mime_type
535
+ # @return [::String]
536
+ # Optional. Specifies the translated document's mime_type.
537
+ # If not specified, the translated file's mime type will be the same as the
538
+ # input file's mime type.
539
+ # Currently only support the output mime type to be the same as input mime
540
+ # type.
541
+ # - application/pdf
542
+ # - application/vnd.openxmlformats-officedocument.wordprocessingml.document
543
+ # - application/vnd.openxmlformats-officedocument.presentationml.presentation
544
+ # - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
545
+ class DocumentOutputConfig
546
+ include ::Google::Protobuf::MessageExts
547
+ extend ::Google::Protobuf::MessageExts::ClassMethods
548
+ end
549
+
550
+ # A document translation request.
551
+ # @!attribute [rw] parent
552
+ # @return [::String]
553
+ # Required. Location to make a regional call.
554
+ #
555
+ # Format: `projects/{project-number-or-id}/locations/{location-id}`.
556
+ #
557
+ # For global calls, use `projects/{project-number-or-id}/locations/global` or
558
+ # `projects/{project-number-or-id}`.
559
+ #
560
+ # Non-global location is required for requests using AutoML models or custom
561
+ # glossaries.
562
+ #
563
+ # Models and glossaries must be within the same region (have the same
564
+ # location-id), otherwise an INVALID_ARGUMENT (400) error is returned.
565
+ # @!attribute [rw] source_language_code
566
+ # @return [::String]
567
+ # Optional. The BCP-47 language code of the input document if known, for
568
+ # example, "en-US" or "sr-Latn". Supported language codes are listed in
569
+ # Language Support. If the source language isn't specified, the API attempts
570
+ # to identify the source language automatically and returns the source
571
+ # language within the response. Source language must be specified if the
572
+ # request contains a glossary or a custom model.
573
+ # @!attribute [rw] target_language_code
574
+ # @return [::String]
575
+ # Required. The BCP-47 language code to use for translation of the input
576
+ # document, set to one of the language codes listed in Language Support.
577
+ # @!attribute [rw] document_input_config
578
+ # @return [::Google::Cloud::Translate::V3::DocumentInputConfig]
579
+ # Required. Input configurations.
580
+ # @!attribute [rw] document_output_config
581
+ # @return [::Google::Cloud::Translate::V3::DocumentOutputConfig]
582
+ # Optional. Output configurations.
583
+ # Defines if the output file should be stored within Cloud Storage as well
584
+ # as the desired output format. If not provided the translated file will
585
+ # only be returned through a byte-stream and its output mime type will be
586
+ # the same as the input file's mime type.
587
+ # @!attribute [rw] model
588
+ # @return [::String]
589
+ # Optional. The `model` type requested for this translation.
590
+ #
591
+ # The format depends on model type:
592
+ #
593
+ # - AutoML Translation models:
594
+ # `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}`
595
+ #
596
+ # - General (built-in) models:
597
+ # `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
598
+ #
599
+ #
600
+ # If not provided, the default Google model (NMT) will be used for
601
+ # translation.
602
+ # @!attribute [rw] glossary_config
603
+ # @return [::Google::Cloud::Translate::V3::TranslateTextGlossaryConfig]
604
+ # Optional. Glossary to be applied. The glossary must be within the same
605
+ # region (have the same location-id) as the model, otherwise an
606
+ # INVALID_ARGUMENT (400) error is returned.
607
+ # @!attribute [rw] labels
608
+ # @return [::Google::Protobuf::Map{::String => ::String}]
609
+ # Optional. The labels with user-defined metadata for the request.
610
+ #
611
+ # Label keys and values can be no longer than 63 characters (Unicode
612
+ # codepoints), can only contain lowercase letters, numeric characters,
613
+ # underscores and dashes. International characters are allowed. Label values
614
+ # are optional. Label keys must start with a letter.
615
+ #
616
+ # See https://cloud.google.com/translate/docs/advanced/labels for more
617
+ # information.
618
+ class TranslateDocumentRequest
619
+ include ::Google::Protobuf::MessageExts
620
+ extend ::Google::Protobuf::MessageExts::ClassMethods
621
+
622
+ # @!attribute [rw] key
623
+ # @return [::String]
624
+ # @!attribute [rw] value
625
+ # @return [::String]
626
+ class LabelsEntry
627
+ include ::Google::Protobuf::MessageExts
628
+ extend ::Google::Protobuf::MessageExts::ClassMethods
629
+ end
630
+ end
631
+
632
+ # A translated document message.
633
+ # @!attribute [rw] byte_stream_outputs
634
+ # @return [::Array<::String>]
635
+ # The array of translated documents. It is expected to be size 1 for now. We
636
+ # may produce multiple translated documents in the future for other type of
637
+ # file formats.
638
+ # @!attribute [rw] mime_type
639
+ # @return [::String]
640
+ # The translated document's mime type.
641
+ # @!attribute [rw] detected_language_code
642
+ # @return [::String]
643
+ # The detected language for the input document.
644
+ # If the user did not provide the source language for the input document,
645
+ # this field will have the language code automatically detected. If the
646
+ # source language was passed, auto-detection of the language does not occur
647
+ # and this field is empty.
648
+ class DocumentTranslation
649
+ include ::Google::Protobuf::MessageExts
650
+ extend ::Google::Protobuf::MessageExts::ClassMethods
651
+ end
652
+
653
+ # A translated document response message.
654
+ # @!attribute [rw] document_translation
655
+ # @return [::Google::Cloud::Translate::V3::DocumentTranslation]
656
+ # Translated document.
657
+ # @!attribute [rw] glossary_document_translation
658
+ # @return [::Google::Cloud::Translate::V3::DocumentTranslation]
659
+ # The document's translation output if a glossary is provided in the request.
660
+ # This can be the same as [TranslateDocumentResponse.document_translation]
661
+ # if no glossary terms apply.
662
+ # @!attribute [rw] model
663
+ # @return [::String]
664
+ # Only present when 'model' is present in the request.
665
+ # 'model' is normalized to have a project number.
666
+ #
667
+ # For example:
668
+ # If the 'model' field in TranslateDocumentRequest is:
669
+ # `projects/{project-id}/locations/{location-id}/models/general/nmt` then
670
+ # `model` here would be normalized to
671
+ # `projects/{project-number}/locations/{location-id}/models/general/nmt`.
672
+ # @!attribute [rw] glossary_config
673
+ # @return [::Google::Cloud::Translate::V3::TranslateTextGlossaryConfig]
674
+ # The `glossary_config` used for this translation.
675
+ class TranslateDocumentResponse
676
+ include ::Google::Protobuf::MessageExts
677
+ extend ::Google::Protobuf::MessageExts::ClassMethods
678
+ end
679
+
449
680
  # The batch translation request.
450
681
  # @!attribute [rw] parent
451
682
  # @return [::String]
@@ -477,7 +708,6 @@ module Google
477
708
  #
478
709
  # - General (built-in) models:
479
710
  # `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
480
- # `projects/{project-number-or-id}/locations/{location-id}/models/general/base`
481
711
  #
482
712
  #
483
713
  # If the map is empty or a specific model is
@@ -485,7 +715,7 @@ module Google
485
715
  # @!attribute [rw] input_configs
486
716
  # @return [::Array<::Google::Cloud::Translate::V3::InputConfig>]
487
717
  # Required. Input configurations.
488
- # The total number of files matched should be <= 1000.
718
+ # The total number of files matched should be <= 100.
489
719
  # The total content size should be <= 100M Unicode codepoints.
490
720
  # The files must use UTF-8 encoding.
491
721
  # @!attribute [rw] output_config
@@ -506,7 +736,8 @@ module Google
506
736
  # characters, underscores and dashes. International characters are allowed.
507
737
  # Label values are optional. Label keys must start with a letter.
508
738
  #
509
- # See https://cloud.google.com/translate/docs/labels for more information.
739
+ # See https://cloud.google.com/translate/docs/advanced/labels for more
740
+ # information.
510
741
  class BatchTranslateTextRequest
511
742
  include ::Google::Protobuf::MessageExts
512
743
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -636,9 +867,8 @@ module Google
636
867
  # For equivalent term sets glossaries:
637
868
  #
638
869
  # - CSV (`.csv`): Multi-column CSV file defining equivalent glossary terms
639
- # in multiple languages. The format is defined for Google Translation
640
- # Toolkit and documented in [Use a
641
- # glossary](https://support.google.com/translatortoolkit/answer/6306379?hl=en).
870
+ # in multiple languages. See documentation for more information -
871
+ # [glossaries](https://cloud.google.com/translate/docs/advanced/glossary).
642
872
  class GlossaryInputConfig
643
873
  include ::Google::Protobuf::MessageExts
644
874
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -745,7 +975,20 @@ module Google
745
975
  # @!attribute [rw] filter
746
976
  # @return [::String]
747
977
  # Optional. Filter specifying constraints of a list operation.
748
- # Filtering is not supported yet, and the parameter currently has no effect.
978
+ # Specify the constraint by the format of "key=value", where key must be
979
+ # "src" or "tgt", and the value must be a valid language code.
980
+ # For multiple restrictions, concatenate them by "AND" (uppercase only),
981
+ # such as: "src=en-US AND tgt=zh-CN". Notice that the exact match is used
982
+ # here, which means using 'en-US' and 'en' can lead to different results,
983
+ # which depends on the language code you used when you create the glossary.
984
+ # For the unidirectional glossaries, the "src" and "tgt" add restrictions
985
+ # on the source and target language code separately.
986
+ # For the equivalent term set glossaries, the "src" and/or "tgt" add
987
+ # restrictions on the term set.
988
+ # For example: "src=en-US AND tgt=zh-CN" will only pick the unidirectional
989
+ # glossaries which exactly match the source language code as "en-US" and the
990
+ # target language code "zh-CN", but all equivalent term set glossaries which
991
+ # contain "en-US" and "zh-CN" in their language set will be picked.
749
992
  # If missing, no filtering is performed.
750
993
  class ListGlossariesRequest
751
994
  include ::Google::Protobuf::MessageExts
@@ -862,6 +1105,297 @@ module Google
862
1105
  include ::Google::Protobuf::MessageExts
863
1106
  extend ::Google::Protobuf::MessageExts::ClassMethods
864
1107
  end
1108
+
1109
+ # The BatchTranslateDocument request.
1110
+ # @!attribute [rw] parent
1111
+ # @return [::String]
1112
+ # Required. Location to make a regional call.
1113
+ #
1114
+ # Format: `projects/{project-number-or-id}/locations/{location-id}`.
1115
+ #
1116
+ # The `global` location is not supported for batch translation.
1117
+ #
1118
+ # Only AutoML Translation models or glossaries within the same region (have
1119
+ # the same location-id) can be used, otherwise an INVALID_ARGUMENT (400)
1120
+ # error is returned.
1121
+ # @!attribute [rw] source_language_code
1122
+ # @return [::String]
1123
+ # Required. The BCP-47 language code of the input document if known, for
1124
+ # example, "en-US" or "sr-Latn". Supported language codes are listed in
1125
+ # Language Support (https://cloud.google.com/translate/docs/languages).
1126
+ # @!attribute [rw] target_language_codes
1127
+ # @return [::Array<::String>]
1128
+ # Required. The BCP-47 language code to use for translation of the input
1129
+ # document. Specify up to 10 language codes here.
1130
+ # @!attribute [rw] input_configs
1131
+ # @return [::Array<::Google::Cloud::Translate::V3::BatchDocumentInputConfig>]
1132
+ # Required. Input configurations.
1133
+ # The total number of files matched should be <= 100.
1134
+ # The total content size to translate should be <= 100M Unicode codepoints.
1135
+ # The files must use UTF-8 encoding.
1136
+ # @!attribute [rw] output_config
1137
+ # @return [::Google::Cloud::Translate::V3::BatchDocumentOutputConfig]
1138
+ # Required. Output configuration.
1139
+ # If 2 input configs match to the same file (that is, same input path),
1140
+ # we don't generate output for duplicate inputs.
1141
+ # @!attribute [rw] models
1142
+ # @return [::Google::Protobuf::Map{::String => ::String}]
1143
+ # Optional. The models to use for translation. Map's key is target language
1144
+ # code. Map's value is the model name. Value can be a built-in general model,
1145
+ # or an AutoML Translation model.
1146
+ #
1147
+ # The value format depends on model type:
1148
+ #
1149
+ # - AutoML Translation models:
1150
+ # `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}`
1151
+ #
1152
+ # - General (built-in) models:
1153
+ # `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`,
1154
+ #
1155
+ #
1156
+ # If the map is empty or a specific model is
1157
+ # not requested for a language pair, then default google model (nmt) is used.
1158
+ # @!attribute [rw] glossaries
1159
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Translate::V3::TranslateTextGlossaryConfig}]
1160
+ # Optional. Glossaries to be applied. It's keyed by target language code.
1161
+ # @!attribute [rw] format_conversions
1162
+ # @return [::Google::Protobuf::Map{::String => ::String}]
1163
+ # Optional. File format conversion map to be applied to all input files.
1164
+ # Map's key is the original mime_type. Map's value is the target mime_type of
1165
+ # translated documents.
1166
+ #
1167
+ # Supported file format conversion includes:
1168
+ # - `application/pdf` to
1169
+ # `application/vnd.openxmlformats-officedocument.wordprocessingml.document`
1170
+ #
1171
+ # If nothing specified, output files will be in the same format as the
1172
+ # original file.
1173
+ class BatchTranslateDocumentRequest
1174
+ include ::Google::Protobuf::MessageExts
1175
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1176
+
1177
+ # @!attribute [rw] key
1178
+ # @return [::String]
1179
+ # @!attribute [rw] value
1180
+ # @return [::String]
1181
+ class ModelsEntry
1182
+ include ::Google::Protobuf::MessageExts
1183
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1184
+ end
1185
+
1186
+ # @!attribute [rw] key
1187
+ # @return [::String]
1188
+ # @!attribute [rw] value
1189
+ # @return [::Google::Cloud::Translate::V3::TranslateTextGlossaryConfig]
1190
+ class GlossariesEntry
1191
+ include ::Google::Protobuf::MessageExts
1192
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1193
+ end
1194
+
1195
+ # @!attribute [rw] key
1196
+ # @return [::String]
1197
+ # @!attribute [rw] value
1198
+ # @return [::String]
1199
+ class FormatConversionsEntry
1200
+ include ::Google::Protobuf::MessageExts
1201
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1202
+ end
1203
+ end
1204
+
1205
+ # Input configuration for BatchTranslateDocument request.
1206
+ # @!attribute [rw] gcs_source
1207
+ # @return [::Google::Cloud::Translate::V3::GcsSource]
1208
+ # Google Cloud Storage location for the source input.
1209
+ # This can be a single file (for example,
1210
+ # `gs://translation-test/input.docx`) or a wildcard (for example,
1211
+ # `gs://translation-test/*`).
1212
+ #
1213
+ # File mime type is determined based on extension. Supported mime type
1214
+ # includes:
1215
+ # - `pdf`, application/pdf
1216
+ # - `docx`,
1217
+ # application/vnd.openxmlformats-officedocument.wordprocessingml.document
1218
+ # - `pptx`,
1219
+ # application/vnd.openxmlformats-officedocument.presentationml.presentation
1220
+ # - `xlsx`,
1221
+ # application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
1222
+ #
1223
+ # The max file size to support for `.docx`, `.pptx` and `.xlsx` is 100MB.
1224
+ # The max file size to support for `.pdf` is 1GB and the max page limit is
1225
+ # 1000 pages.
1226
+ # The max file size to support for all input documents is 1GB.
1227
+ class BatchDocumentInputConfig
1228
+ include ::Google::Protobuf::MessageExts
1229
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1230
+ end
1231
+
1232
+ # Output configuration for BatchTranslateDocument request.
1233
+ # @!attribute [rw] gcs_destination
1234
+ # @return [::Google::Cloud::Translate::V3::GcsDestination]
1235
+ # Google Cloud Storage destination for output content.
1236
+ # For every single input document (for example, gs://a/b/c.[extension]), we
1237
+ # generate at most 2 * n output files. (n is the # of target_language_codes
1238
+ # in the BatchTranslateDocumentRequest).
1239
+ #
1240
+ # While the input documents are being processed, we write/update an index
1241
+ # file `index.csv` under `gcs_destination.output_uri_prefix` (for example,
1242
+ # gs://translation_output/index.csv) The index file is generated/updated as
1243
+ # new files are being translated. The format is:
1244
+ #
1245
+ # input_document,target_language_code,translation_output,error_output,
1246
+ # glossary_translation_output,glossary_error_output
1247
+ #
1248
+ # `input_document` is one file we matched using gcs_source.input_uri.
1249
+ # `target_language_code` is provided in the request.
1250
+ # `translation_output` contains the translations. (details provided below)
1251
+ # `error_output` contains the error message during processing of the file.
1252
+ # Both translations_file and errors_file could be empty strings if we have
1253
+ # no content to output.
1254
+ # `glossary_translation_output` and `glossary_error_output` are the
1255
+ # translated output/error when we apply glossaries. They could also be
1256
+ # empty if we have no content to output.
1257
+ #
1258
+ # Once a row is present in index.csv, the input/output matching never
1259
+ # changes. Callers should also expect all the content in input_file are
1260
+ # processed and ready to be consumed (that is, no partial output file is
1261
+ # written).
1262
+ #
1263
+ # Since index.csv will be keeping updated during the process, please make
1264
+ # sure there is no custom retention policy applied on the output bucket
1265
+ # that may avoid file updating.
1266
+ # (https://cloud.google.com/storage/docs/bucket-lock?hl=en#retention-policy)
1267
+ #
1268
+ # The naming format of translation output files follows (for target
1269
+ # language code [trg]): `translation_output`:
1270
+ # gs://translation_output/a_b_c_[trg]_translation.[extension]
1271
+ # `glossary_translation_output`:
1272
+ # gs://translation_test/a_b_c_[trg]_glossary_translation.[extension] The
1273
+ # output document will maintain the same file format as the input document.
1274
+ #
1275
+ # The naming format of error output files follows (for target language code
1276
+ # [trg]): `error_output`: gs://translation_test/a_b_c_[trg]_errors.txt
1277
+ # `glossary_error_output`:
1278
+ # gs://translation_test/a_b_c_[trg]_glossary_translation.txt The error
1279
+ # output is a txt file containing error details.
1280
+ class BatchDocumentOutputConfig
1281
+ include ::Google::Protobuf::MessageExts
1282
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1283
+ end
1284
+
1285
+ # Stored in the
1286
+ # {::Google::Longrunning::Operation#response google.longrunning.Operation.response}
1287
+ # field returned by BatchTranslateDocument if at least one document is
1288
+ # translated successfully.
1289
+ # @!attribute [rw] total_pages
1290
+ # @return [::Integer]
1291
+ # Total number of pages to translate in all documents. Documents without
1292
+ # clear page definition (such as XLSX) are not counted.
1293
+ # @!attribute [rw] translated_pages
1294
+ # @return [::Integer]
1295
+ # Number of successfully translated pages in all documents. Documents without
1296
+ # clear page definition (such as XLSX) are not counted.
1297
+ # @!attribute [rw] failed_pages
1298
+ # @return [::Integer]
1299
+ # Number of pages that failed to process in all documents. Documents without
1300
+ # clear page definition (such as XLSX) are not counted.
1301
+ # @!attribute [rw] total_billable_pages
1302
+ # @return [::Integer]
1303
+ # Number of billable pages in documents with clear page definition (such as
1304
+ # PDF, DOCX, PPTX)
1305
+ # @!attribute [rw] total_characters
1306
+ # @return [::Integer]
1307
+ # Total number of characters (Unicode codepoints) in all documents.
1308
+ # @!attribute [rw] translated_characters
1309
+ # @return [::Integer]
1310
+ # Number of successfully translated characters (Unicode codepoints) in all
1311
+ # documents.
1312
+ # @!attribute [rw] failed_characters
1313
+ # @return [::Integer]
1314
+ # Number of characters that have failed to process (Unicode codepoints) in
1315
+ # all documents.
1316
+ # @!attribute [rw] total_billable_characters
1317
+ # @return [::Integer]
1318
+ # Number of billable characters (Unicode codepoints) in documents without
1319
+ # clear page definition, such as XLSX.
1320
+ # @!attribute [rw] submit_time
1321
+ # @return [::Google::Protobuf::Timestamp]
1322
+ # Time when the operation was submitted.
1323
+ # @!attribute [rw] end_time
1324
+ # @return [::Google::Protobuf::Timestamp]
1325
+ # The time when the operation is finished and
1326
+ # {::Google::Longrunning::Operation#done google.longrunning.Operation.done} is
1327
+ # set to true.
1328
+ class BatchTranslateDocumentResponse
1329
+ include ::Google::Protobuf::MessageExts
1330
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1331
+ end
1332
+
1333
+ # State metadata for the batch translation operation.
1334
+ # @!attribute [rw] state
1335
+ # @return [::Google::Cloud::Translate::V3::BatchTranslateDocumentMetadata::State]
1336
+ # The state of the operation.
1337
+ # @!attribute [rw] total_pages
1338
+ # @return [::Integer]
1339
+ # Total number of pages to translate in all documents so far. Documents
1340
+ # without clear page definition (such as XLSX) are not counted.
1341
+ # @!attribute [rw] translated_pages
1342
+ # @return [::Integer]
1343
+ # Number of successfully translated pages in all documents so far. Documents
1344
+ # without clear page definition (such as XLSX) are not counted.
1345
+ # @!attribute [rw] failed_pages
1346
+ # @return [::Integer]
1347
+ # Number of pages that failed to process in all documents so far. Documents
1348
+ # without clear page definition (such as XLSX) are not counted.
1349
+ # @!attribute [rw] total_billable_pages
1350
+ # @return [::Integer]
1351
+ # Number of billable pages in documents with clear page definition (such as
1352
+ # PDF, DOCX, PPTX) so far.
1353
+ # @!attribute [rw] total_characters
1354
+ # @return [::Integer]
1355
+ # Total number of characters (Unicode codepoints) in all documents so far.
1356
+ # @!attribute [rw] translated_characters
1357
+ # @return [::Integer]
1358
+ # Number of successfully translated characters (Unicode codepoints) in all
1359
+ # documents so far.
1360
+ # @!attribute [rw] failed_characters
1361
+ # @return [::Integer]
1362
+ # Number of characters that have failed to process (Unicode codepoints) in
1363
+ # all documents so far.
1364
+ # @!attribute [rw] total_billable_characters
1365
+ # @return [::Integer]
1366
+ # Number of billable characters (Unicode codepoints) in documents without
1367
+ # clear page definition (such as XLSX) so far.
1368
+ # @!attribute [rw] submit_time
1369
+ # @return [::Google::Protobuf::Timestamp]
1370
+ # Time when the operation was submitted.
1371
+ class BatchTranslateDocumentMetadata
1372
+ include ::Google::Protobuf::MessageExts
1373
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1374
+
1375
+ # State of the job.
1376
+ module State
1377
+ # Invalid.
1378
+ STATE_UNSPECIFIED = 0
1379
+
1380
+ # Request is being processed.
1381
+ RUNNING = 1
1382
+
1383
+ # The batch is processed, and at least one item was successfully processed.
1384
+ SUCCEEDED = 2
1385
+
1386
+ # The batch is done and no item was successfully processed.
1387
+ FAILED = 3
1388
+
1389
+ # Request is in the process of being canceled after caller invoked
1390
+ # longrunning.Operations.CancelOperation on the request id.
1391
+ CANCELLING = 4
1392
+
1393
+ # The batch is done after the user has called the
1394
+ # longrunning.Operations.CancelOperation. Any records processed before the
1395
+ # cancel command are output as specified in the request.
1396
+ CANCELLED = 5
1397
+ end
1398
+ end
865
1399
  end
866
1400
  end
867
1401
  end