google-cloud-translate-v3 0.3.0 → 0.4.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.
@@ -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