google-apis-pubsub_v1 0.28.0 → 0.53.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +104 -0
- data/OVERVIEW.md +2 -2
- data/lib/google/apis/pubsub_v1/classes.rb +670 -232
- data/lib/google/apis/pubsub_v1/gem_version.rb +3 -3
- data/lib/google/apis/pubsub_v1/representations.rb +176 -0
- data/lib/google/apis/pubsub_v1/service.rb +194 -44
- metadata +7 -7
@@ -42,13 +42,125 @@ module Google
|
|
42
42
|
end
|
43
43
|
end
|
44
44
|
|
45
|
+
# Information about an associated Analytics Hub subscription (https://cloud.
|
46
|
+
# google.com/bigquery/docs/analytics-hub-manage-subscriptions).
|
47
|
+
class AnalyticsHubSubscriptionInfo
|
48
|
+
include Google::Apis::Core::Hashable
|
49
|
+
|
50
|
+
# Optional. The name of the associated Analytics Hub listing resource. Pattern: "
|
51
|
+
# projects/`project`/locations/`location`/dataExchanges/`data_exchange`/listings/
|
52
|
+
# `listing`"
|
53
|
+
# Corresponds to the JSON property `listing`
|
54
|
+
# @return [String]
|
55
|
+
attr_accessor :listing
|
56
|
+
|
57
|
+
# Optional. The name of the associated Analytics Hub subscription resource.
|
58
|
+
# Pattern: "projects/`project`/locations/`location`/subscriptions/`subscription`"
|
59
|
+
# Corresponds to the JSON property `subscription`
|
60
|
+
# @return [String]
|
61
|
+
attr_accessor :subscription
|
62
|
+
|
63
|
+
def initialize(**args)
|
64
|
+
update!(**args)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Update properties of this object
|
68
|
+
def update!(**args)
|
69
|
+
@listing = args[:listing] if args.key?(:listing)
|
70
|
+
@subscription = args[:subscription] if args.key?(:subscription)
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
# Configuration for writing message data in Avro format. Message payloads and
|
75
|
+
# metadata will be written to files as an Avro binary.
|
76
|
+
class AvroConfig
|
77
|
+
include Google::Apis::Core::Hashable
|
78
|
+
|
79
|
+
# Optional. When true, the output Cloud Storage file will be serialized using
|
80
|
+
# the topic schema, if it exists.
|
81
|
+
# Corresponds to the JSON property `useTopicSchema`
|
82
|
+
# @return [Boolean]
|
83
|
+
attr_accessor :use_topic_schema
|
84
|
+
alias_method :use_topic_schema?, :use_topic_schema
|
85
|
+
|
86
|
+
# Optional. When true, write the subscription name, message_id, publish_time,
|
87
|
+
# attributes, and ordering_key as additional fields in the output. The
|
88
|
+
# subscription name, message_id, and publish_time fields are put in their own
|
89
|
+
# fields while all other message properties other than data (for example, an
|
90
|
+
# ordering_key, if present) are added as entries in the attributes map.
|
91
|
+
# Corresponds to the JSON property `writeMetadata`
|
92
|
+
# @return [Boolean]
|
93
|
+
attr_accessor :write_metadata
|
94
|
+
alias_method :write_metadata?, :write_metadata
|
95
|
+
|
96
|
+
def initialize(**args)
|
97
|
+
update!(**args)
|
98
|
+
end
|
99
|
+
|
100
|
+
# Update properties of this object
|
101
|
+
def update!(**args)
|
102
|
+
@use_topic_schema = args[:use_topic_schema] if args.key?(:use_topic_schema)
|
103
|
+
@write_metadata = args[:write_metadata] if args.key?(:write_metadata)
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
# Ingestion settings for Amazon Kinesis Data Streams.
|
108
|
+
class AwsKinesis
|
109
|
+
include Google::Apis::Core::Hashable
|
110
|
+
|
111
|
+
# Required. AWS role ARN to be used for Federated Identity authentication with
|
112
|
+
# Kinesis. Check the Pub/Sub docs for how to set up this role and the required
|
113
|
+
# permissions that need to be attached to it.
|
114
|
+
# Corresponds to the JSON property `awsRoleArn`
|
115
|
+
# @return [String]
|
116
|
+
attr_accessor :aws_role_arn
|
117
|
+
|
118
|
+
# Required. The Kinesis consumer ARN to used for ingestion in Enhanced Fan-Out
|
119
|
+
# mode. The consumer must be already created and ready to be used.
|
120
|
+
# Corresponds to the JSON property `consumerArn`
|
121
|
+
# @return [String]
|
122
|
+
attr_accessor :consumer_arn
|
123
|
+
|
124
|
+
# Required. The GCP service account to be used for Federated Identity
|
125
|
+
# authentication with Kinesis (via a `AssumeRoleWithWebIdentity` call for the
|
126
|
+
# provided role). The `aws_role_arn` must be set up with `accounts.google.com:
|
127
|
+
# sub` equals to this service account number.
|
128
|
+
# Corresponds to the JSON property `gcpServiceAccount`
|
129
|
+
# @return [String]
|
130
|
+
attr_accessor :gcp_service_account
|
131
|
+
|
132
|
+
# Output only. An output-only field that indicates the state of the Kinesis
|
133
|
+
# ingestion source.
|
134
|
+
# Corresponds to the JSON property `state`
|
135
|
+
# @return [String]
|
136
|
+
attr_accessor :state
|
137
|
+
|
138
|
+
# Required. The Kinesis stream ARN to ingest data from.
|
139
|
+
# Corresponds to the JSON property `streamArn`
|
140
|
+
# @return [String]
|
141
|
+
attr_accessor :stream_arn
|
142
|
+
|
143
|
+
def initialize(**args)
|
144
|
+
update!(**args)
|
145
|
+
end
|
146
|
+
|
147
|
+
# Update properties of this object
|
148
|
+
def update!(**args)
|
149
|
+
@aws_role_arn = args[:aws_role_arn] if args.key?(:aws_role_arn)
|
150
|
+
@consumer_arn = args[:consumer_arn] if args.key?(:consumer_arn)
|
151
|
+
@gcp_service_account = args[:gcp_service_account] if args.key?(:gcp_service_account)
|
152
|
+
@state = args[:state] if args.key?(:state)
|
153
|
+
@stream_arn = args[:stream_arn] if args.key?(:stream_arn)
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
45
157
|
# Configuration for a BigQuery subscription.
|
46
158
|
class BigQueryConfig
|
47
159
|
include Google::Apis::Core::Hashable
|
48
160
|
|
49
|
-
# When true and use_topic_schema is true, any fields that are a part
|
50
|
-
# topic schema that are not part of the BigQuery table schema are dropped
|
51
|
-
# writing to BigQuery. Otherwise, the schemas must be kept in sync and any
|
161
|
+
# Optional. When true and use_topic_schema is true, any fields that are a part
|
162
|
+
# of the topic schema that are not part of the BigQuery table schema are dropped
|
163
|
+
# when writing to BigQuery. Otherwise, the schemas must be kept in sync and any
|
52
164
|
# messages with extra fields are not written and remain in the subscription's
|
53
165
|
# backlog.
|
54
166
|
# Corresponds to the JSON property `dropUnknownFields`
|
@@ -56,30 +168,48 @@ module Google
|
|
56
168
|
attr_accessor :drop_unknown_fields
|
57
169
|
alias_method :drop_unknown_fields?, :drop_unknown_fields
|
58
170
|
|
171
|
+
# Optional. The service account to use to write to BigQuery. The subscription
|
172
|
+
# creator or updater that specifies this field must have `iam.serviceAccounts.
|
173
|
+
# actAs` permission on the service account. If not specified, the Pub/Sub [
|
174
|
+
# service agent](https://cloud.google.com/iam/docs/service-agents), service-`
|
175
|
+
# project_number`@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
|
176
|
+
# Corresponds to the JSON property `serviceAccountEmail`
|
177
|
+
# @return [String]
|
178
|
+
attr_accessor :service_account_email
|
179
|
+
|
59
180
|
# Output only. An output-only field that indicates whether or not the
|
60
181
|
# subscription can receive messages.
|
61
182
|
# Corresponds to the JSON property `state`
|
62
183
|
# @return [String]
|
63
184
|
attr_accessor :state
|
64
185
|
|
65
|
-
# The name of the table to which to write data, of the form `projectId
|
66
|
-
# datasetId`.`tableId`
|
186
|
+
# Optional. The name of the table to which to write data, of the form `projectId`
|
187
|
+
# .`datasetId`.`tableId`
|
67
188
|
# Corresponds to the JSON property `table`
|
68
189
|
# @return [String]
|
69
190
|
attr_accessor :table
|
70
191
|
|
71
|
-
# When true, use the
|
72
|
-
#
|
192
|
+
# Optional. When true, use the BigQuery table's schema as the columns to write
|
193
|
+
# to in BigQuery. `use_table_schema` and `use_topic_schema` cannot be enabled at
|
194
|
+
# the same time.
|
195
|
+
# Corresponds to the JSON property `useTableSchema`
|
196
|
+
# @return [Boolean]
|
197
|
+
attr_accessor :use_table_schema
|
198
|
+
alias_method :use_table_schema?, :use_table_schema
|
199
|
+
|
200
|
+
# Optional. When true, use the topic's schema as the columns to write to in
|
201
|
+
# BigQuery, if it exists. `use_topic_schema` and `use_table_schema` cannot be
|
202
|
+
# enabled at the same time.
|
73
203
|
# Corresponds to the JSON property `useTopicSchema`
|
74
204
|
# @return [Boolean]
|
75
205
|
attr_accessor :use_topic_schema
|
76
206
|
alias_method :use_topic_schema?, :use_topic_schema
|
77
207
|
|
78
|
-
# When true, write the subscription name, message_id, publish_time,
|
79
|
-
# and ordering_key to additional columns in the table. The
|
80
|
-
# message_id, and publish_time fields are put in their own
|
81
|
-
# other message properties (other than data) are written to a
|
82
|
-
# attributes column.
|
208
|
+
# Optional. When true, write the subscription name, message_id, publish_time,
|
209
|
+
# attributes, and ordering_key to additional columns in the table. The
|
210
|
+
# subscription name, message_id, and publish_time fields are put in their own
|
211
|
+
# columns while all other message properties (other than data) are written to a
|
212
|
+
# JSON object in the attributes column.
|
83
213
|
# Corresponds to the JSON property `writeMetadata`
|
84
214
|
# @return [Boolean]
|
85
215
|
attr_accessor :write_metadata
|
@@ -92,8 +222,10 @@ module Google
|
|
92
222
|
# Update properties of this object
|
93
223
|
def update!(**args)
|
94
224
|
@drop_unknown_fields = args[:drop_unknown_fields] if args.key?(:drop_unknown_fields)
|
225
|
+
@service_account_email = args[:service_account_email] if args.key?(:service_account_email)
|
95
226
|
@state = args[:state] if args.key?(:state)
|
96
227
|
@table = args[:table] if args.key?(:table)
|
228
|
+
@use_table_schema = args[:use_table_schema] if args.key?(:use_table_schema)
|
97
229
|
@use_topic_schema = args[:use_topic_schema] if args.key?(:use_topic_schema)
|
98
230
|
@write_metadata = args[:write_metadata] if args.key?(:write_metadata)
|
99
231
|
end
|
@@ -137,7 +269,27 @@ module Google
|
|
137
269
|
# kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-
|
138
270
|
# project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An
|
139
271
|
# email address that represents a Google group. For example, `admins@example.com`
|
140
|
-
# . * `
|
272
|
+
# . * `domain:`domain``: The G Suite domain (primary) that represents all the
|
273
|
+
# users of that domain. For example, `google.com` or `example.com`. * `principal:
|
274
|
+
# //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/`
|
275
|
+
# subject_attribute_value``: A single identity in a workforce identity pool. * `
|
276
|
+
# principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/
|
277
|
+
# group/`group_id``: All workforce identities in a group. * `principalSet://iam.
|
278
|
+
# googleapis.com/locations/global/workforcePools/`pool_id`/attribute.`
|
279
|
+
# attribute_name`/`attribute_value``: All workforce identities with a specific
|
280
|
+
# attribute value. * `principalSet://iam.googleapis.com/locations/global/
|
281
|
+
# workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * `
|
282
|
+
# principal://iam.googleapis.com/projects/`project_number`/locations/global/
|
283
|
+
# workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single
|
284
|
+
# identity in a workload identity pool. * `principalSet://iam.googleapis.com/
|
285
|
+
# projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/
|
286
|
+
# group/`group_id``: A workload identity pool group. * `principalSet://iam.
|
287
|
+
# googleapis.com/projects/`project_number`/locations/global/
|
288
|
+
# workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``:
|
289
|
+
# All identities in a workload identity pool with a certain attribute. * `
|
290
|
+
# principalSet://iam.googleapis.com/projects/`project_number`/locations/global/
|
291
|
+
# workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool.
|
292
|
+
# * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
|
141
293
|
# identifier) representing a user that has been recently deleted. For example, `
|
142
294
|
# alice@example.com?uid=123456789012345678901`. If the user is recovered, this
|
143
295
|
# value reverts to `user:`emailid`` and the recovered user retains the role in
|
@@ -151,14 +303,19 @@ module Google
|
|
151
303
|
# been recently deleted. For example, `admins@example.com?uid=
|
152
304
|
# 123456789012345678901`. If the group is recovered, this value reverts to `
|
153
305
|
# group:`emailid`` and the recovered group retains the role in the binding. * `
|
154
|
-
#
|
155
|
-
#
|
306
|
+
# deleted:principal://iam.googleapis.com/locations/global/workforcePools/`
|
307
|
+
# pool_id`/subject/`subject_attribute_value``: Deleted single identity in a
|
308
|
+
# workforce identity pool. For example, `deleted:principal://iam.googleapis.com/
|
309
|
+
# locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
|
156
310
|
# Corresponds to the JSON property `members`
|
157
311
|
# @return [Array<String>]
|
158
312
|
attr_accessor :members
|
159
313
|
|
160
314
|
# Role that is assigned to the list of `members`, or principals. For example, `
|
161
|
-
# roles/viewer`, `roles/editor`, or `roles/owner`.
|
315
|
+
# roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM
|
316
|
+
# roles and permissions, see the [IAM documentation](https://cloud.google.com/
|
317
|
+
# iam/docs/roles-overview). For a list of the available pre-defined roles, see [
|
318
|
+
# here](https://cloud.google.com/iam/docs/understanding-roles).
|
162
319
|
# Corresponds to the JSON property `role`
|
163
320
|
# @return [String]
|
164
321
|
attr_accessor :role
|
@@ -175,12 +332,123 @@ module Google
|
|
175
332
|
end
|
176
333
|
end
|
177
334
|
|
335
|
+
# Configuration for a Cloud Storage subscription.
|
336
|
+
class CloudStorageConfig
|
337
|
+
include Google::Apis::Core::Hashable
|
338
|
+
|
339
|
+
# Configuration for writing message data in Avro format. Message payloads and
|
340
|
+
# metadata will be written to files as an Avro binary.
|
341
|
+
# Corresponds to the JSON property `avroConfig`
|
342
|
+
# @return [Google::Apis::PubsubV1::AvroConfig]
|
343
|
+
attr_accessor :avro_config
|
344
|
+
|
345
|
+
# Required. User-provided name for the Cloud Storage bucket. The bucket must be
|
346
|
+
# created by the user. The bucket name must be without any prefix like "gs://".
|
347
|
+
# See the [bucket naming requirements] (https://cloud.google.com/storage/docs/
|
348
|
+
# buckets#naming).
|
349
|
+
# Corresponds to the JSON property `bucket`
|
350
|
+
# @return [String]
|
351
|
+
attr_accessor :bucket
|
352
|
+
|
353
|
+
# Optional. User-provided format string specifying how to represent datetimes in
|
354
|
+
# Cloud Storage filenames. See the [datetime format guidance](https://cloud.
|
355
|
+
# google.com/pubsub/docs/create-cloudstorage-subscription#file_names).
|
356
|
+
# Corresponds to the JSON property `filenameDatetimeFormat`
|
357
|
+
# @return [String]
|
358
|
+
attr_accessor :filename_datetime_format
|
359
|
+
|
360
|
+
# Optional. User-provided prefix for Cloud Storage filename. See the [object
|
361
|
+
# naming requirements](https://cloud.google.com/storage/docs/objects#naming).
|
362
|
+
# Corresponds to the JSON property `filenamePrefix`
|
363
|
+
# @return [String]
|
364
|
+
attr_accessor :filename_prefix
|
365
|
+
|
366
|
+
# Optional. User-provided suffix for Cloud Storage filename. See the [object
|
367
|
+
# naming requirements](https://cloud.google.com/storage/docs/objects#naming).
|
368
|
+
# Must not end in "/".
|
369
|
+
# Corresponds to the JSON property `filenameSuffix`
|
370
|
+
# @return [String]
|
371
|
+
attr_accessor :filename_suffix
|
372
|
+
|
373
|
+
# Optional. The maximum bytes that can be written to a Cloud Storage file before
|
374
|
+
# a new file is created. Min 1 KB, max 10 GiB. The max_bytes limit may be
|
375
|
+
# exceeded in cases where messages are larger than the limit.
|
376
|
+
# Corresponds to the JSON property `maxBytes`
|
377
|
+
# @return [Fixnum]
|
378
|
+
attr_accessor :max_bytes
|
379
|
+
|
380
|
+
# Optional. The maximum duration that can elapse before a new Cloud Storage file
|
381
|
+
# is created. Min 1 minute, max 10 minutes, default 5 minutes. May not exceed
|
382
|
+
# the subscription's acknowledgement deadline.
|
383
|
+
# Corresponds to the JSON property `maxDuration`
|
384
|
+
# @return [String]
|
385
|
+
attr_accessor :max_duration
|
386
|
+
|
387
|
+
# Optional. The service account to use to write to Cloud Storage. The
|
388
|
+
# subscription creator or updater that specifies this field must have `iam.
|
389
|
+
# serviceAccounts.actAs` permission on the service account. If not specified,
|
390
|
+
# the Pub/Sub [service agent](https://cloud.google.com/iam/docs/service-agents),
|
391
|
+
# service-`project_number`@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
|
392
|
+
# Corresponds to the JSON property `serviceAccountEmail`
|
393
|
+
# @return [String]
|
394
|
+
attr_accessor :service_account_email
|
395
|
+
|
396
|
+
# Output only. An output-only field that indicates whether or not the
|
397
|
+
# subscription can receive messages.
|
398
|
+
# Corresponds to the JSON property `state`
|
399
|
+
# @return [String]
|
400
|
+
attr_accessor :state
|
401
|
+
|
402
|
+
# Configuration for writing message data in text format. Message payloads will
|
403
|
+
# be written to files as raw text, separated by a newline.
|
404
|
+
# Corresponds to the JSON property `textConfig`
|
405
|
+
# @return [Google::Apis::PubsubV1::TextConfig]
|
406
|
+
attr_accessor :text_config
|
407
|
+
|
408
|
+
def initialize(**args)
|
409
|
+
update!(**args)
|
410
|
+
end
|
411
|
+
|
412
|
+
# Update properties of this object
|
413
|
+
def update!(**args)
|
414
|
+
@avro_config = args[:avro_config] if args.key?(:avro_config)
|
415
|
+
@bucket = args[:bucket] if args.key?(:bucket)
|
416
|
+
@filename_datetime_format = args[:filename_datetime_format] if args.key?(:filename_datetime_format)
|
417
|
+
@filename_prefix = args[:filename_prefix] if args.key?(:filename_prefix)
|
418
|
+
@filename_suffix = args[:filename_suffix] if args.key?(:filename_suffix)
|
419
|
+
@max_bytes = args[:max_bytes] if args.key?(:max_bytes)
|
420
|
+
@max_duration = args[:max_duration] if args.key?(:max_duration)
|
421
|
+
@service_account_email = args[:service_account_email] if args.key?(:service_account_email)
|
422
|
+
@state = args[:state] if args.key?(:state)
|
423
|
+
@text_config = args[:text_config] if args.key?(:text_config)
|
424
|
+
end
|
425
|
+
end
|
426
|
+
|
427
|
+
# Request for CommitSchema method.
|
428
|
+
class CommitSchemaRequest
|
429
|
+
include Google::Apis::Core::Hashable
|
430
|
+
|
431
|
+
# A schema resource.
|
432
|
+
# Corresponds to the JSON property `schema`
|
433
|
+
# @return [Google::Apis::PubsubV1::Schema]
|
434
|
+
attr_accessor :schema
|
435
|
+
|
436
|
+
def initialize(**args)
|
437
|
+
update!(**args)
|
438
|
+
end
|
439
|
+
|
440
|
+
# Update properties of this object
|
441
|
+
def update!(**args)
|
442
|
+
@schema = args[:schema] if args.key?(:schema)
|
443
|
+
end
|
444
|
+
end
|
445
|
+
|
178
446
|
# Request for the `CreateSnapshot` method.
|
179
447
|
class CreateSnapshotRequest
|
180
448
|
include Google::Apis::Core::Hashable
|
181
449
|
|
182
|
-
# See [Creating and managing labels](https://cloud.google.com/pubsub/
|
183
|
-
# .
|
450
|
+
# Optional. See [Creating and managing labels](https://cloud.google.com/pubsub/
|
451
|
+
# docs/labels).
|
184
452
|
# Corresponds to the JSON property `labels`
|
185
453
|
# @return [Hash<String,String>]
|
186
454
|
attr_accessor :labels
|
@@ -214,8 +482,8 @@ module Google
|
|
214
482
|
class DeadLetterPolicy
|
215
483
|
include Google::Apis::Core::Hashable
|
216
484
|
|
217
|
-
# The name of the topic to which dead letter messages should be
|
218
|
-
# Format is `projects/`project`/topics/`topic``.The
|
485
|
+
# Optional. The name of the topic to which dead letter messages should be
|
486
|
+
# published. Format is `projects/`project`/topics/`topic``.The Pub/Sub service
|
219
487
|
# account associated with the enclosing subscription's parent project (i.e.,
|
220
488
|
# service-`project_number`@gcp-sa-pubsub.iam.gserviceaccount.com) must have
|
221
489
|
# permission to Publish() to this topic. The operation will fail if the topic
|
@@ -225,13 +493,13 @@ module Google
|
|
225
493
|
# @return [String]
|
226
494
|
attr_accessor :dead_letter_topic
|
227
495
|
|
228
|
-
# The maximum number of delivery attempts for any message. The value
|
229
|
-
# between 5 and 100. The number of delivery attempts is defined as 1 + (
|
230
|
-
# of number of NACKs and number of times the acknowledgement deadline
|
231
|
-
# exceeded for the message). A NACK is any call to ModifyAckDeadline
|
232
|
-
# deadline. Note that client libraries may automatically extend
|
233
|
-
# This field will be honored on a best effort basis. If this
|
234
|
-
# default value of 5 is used.
|
496
|
+
# Optional. The maximum number of delivery attempts for any message. The value
|
497
|
+
# must be between 5 and 100. The number of delivery attempts is defined as 1 + (
|
498
|
+
# the sum of number of NACKs and number of times the acknowledgement deadline
|
499
|
+
# has been exceeded for the message). A NACK is any call to ModifyAckDeadline
|
500
|
+
# with a 0 deadline. Note that client libraries may automatically extend
|
501
|
+
# ack_deadlines. This field will be honored on a best effort basis. If this
|
502
|
+
# parameter is 0, a default value of 5 is used.
|
235
503
|
# Corresponds to the JSON property `maxDeliveryAttempts`
|
236
504
|
# @return [Fixnum]
|
237
505
|
attr_accessor :max_delivery_attempts
|
@@ -281,11 +549,11 @@ module Google
|
|
281
549
|
class ExpirationPolicy
|
282
550
|
include Google::Apis::Core::Hashable
|
283
551
|
|
284
|
-
# Specifies the "time-to-live" duration for an associated resource.
|
285
|
-
# expires if it is not active for a period of `ttl`. The definition
|
286
|
-
# depends on the type of the associated resource. The minimum and
|
287
|
-
# allowed values for `ttl` depend on the type of the associated resource,
|
288
|
-
# well. If `ttl` is not set, the associated resource never expires.
|
552
|
+
# Optional. Specifies the "time-to-live" duration for an associated resource.
|
553
|
+
# The resource expires if it is not active for a period of `ttl`. The definition
|
554
|
+
# of "activity" depends on the type of the associated resource. The minimum and
|
555
|
+
# maximum allowed values for `ttl` depend on the type of the associated resource,
|
556
|
+
# as well. If `ttl` is not set, the associated resource never expires.
|
289
557
|
# Corresponds to the JSON property `ttl`
|
290
558
|
# @return [String]
|
291
559
|
attr_accessor :ttl
|
@@ -354,6 +622,51 @@ module Google
|
|
354
622
|
end
|
355
623
|
end
|
356
624
|
|
625
|
+
# Settings for an ingestion data source on a topic.
|
626
|
+
class IngestionDataSourceSettings
|
627
|
+
include Google::Apis::Core::Hashable
|
628
|
+
|
629
|
+
# Ingestion settings for Amazon Kinesis Data Streams.
|
630
|
+
# Corresponds to the JSON property `awsKinesis`
|
631
|
+
# @return [Google::Apis::PubsubV1::AwsKinesis]
|
632
|
+
attr_accessor :aws_kinesis
|
633
|
+
|
634
|
+
def initialize(**args)
|
635
|
+
update!(**args)
|
636
|
+
end
|
637
|
+
|
638
|
+
# Update properties of this object
|
639
|
+
def update!(**args)
|
640
|
+
@aws_kinesis = args[:aws_kinesis] if args.key?(:aws_kinesis)
|
641
|
+
end
|
642
|
+
end
|
643
|
+
|
644
|
+
# Response for the `ListSchemaRevisions` method.
|
645
|
+
class ListSchemaRevisionsResponse
|
646
|
+
include Google::Apis::Core::Hashable
|
647
|
+
|
648
|
+
# A token that can be sent as `page_token` to retrieve the next page. If this
|
649
|
+
# field is empty, there are no subsequent pages.
|
650
|
+
# Corresponds to the JSON property `nextPageToken`
|
651
|
+
# @return [String]
|
652
|
+
attr_accessor :next_page_token
|
653
|
+
|
654
|
+
# The revisions of the schema.
|
655
|
+
# Corresponds to the JSON property `schemas`
|
656
|
+
# @return [Array<Google::Apis::PubsubV1::Schema>]
|
657
|
+
attr_accessor :schemas
|
658
|
+
|
659
|
+
def initialize(**args)
|
660
|
+
update!(**args)
|
661
|
+
end
|
662
|
+
|
663
|
+
# Update properties of this object
|
664
|
+
def update!(**args)
|
665
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
666
|
+
@schemas = args[:schemas] if args.key?(:schemas)
|
667
|
+
end
|
668
|
+
end
|
669
|
+
|
357
670
|
# Response for the `ListSchemas` method.
|
358
671
|
class ListSchemasResponse
|
359
672
|
include Google::Apis::Core::Hashable
|
@@ -384,13 +697,13 @@ module Google
|
|
384
697
|
class ListSnapshotsResponse
|
385
698
|
include Google::Apis::Core::Hashable
|
386
699
|
|
387
|
-
# If not empty, indicates that there may be more snapshot that match
|
388
|
-
# this value should be passed in a new `ListSnapshotsRequest`.
|
700
|
+
# Optional. If not empty, indicates that there may be more snapshot that match
|
701
|
+
# the request; this value should be passed in a new `ListSnapshotsRequest`.
|
389
702
|
# Corresponds to the JSON property `nextPageToken`
|
390
703
|
# @return [String]
|
391
704
|
attr_accessor :next_page_token
|
392
705
|
|
393
|
-
# The resulting snapshots.
|
706
|
+
# Optional. The resulting snapshots.
|
394
707
|
# Corresponds to the JSON property `snapshots`
|
395
708
|
# @return [Array<Google::Apis::PubsubV1::Snapshot>]
|
396
709
|
attr_accessor :snapshots
|
@@ -410,14 +723,14 @@ module Google
|
|
410
723
|
class ListSubscriptionsResponse
|
411
724
|
include Google::Apis::Core::Hashable
|
412
725
|
|
413
|
-
# If not empty, indicates that there may be more subscriptions that
|
414
|
-
# request; this value should be passed in a new `
|
415
|
-
# get more subscriptions.
|
726
|
+
# Optional. If not empty, indicates that there may be more subscriptions that
|
727
|
+
# match the request; this value should be passed in a new `
|
728
|
+
# ListSubscriptionsRequest` to get more subscriptions.
|
416
729
|
# Corresponds to the JSON property `nextPageToken`
|
417
730
|
# @return [String]
|
418
731
|
attr_accessor :next_page_token
|
419
732
|
|
420
|
-
# The subscriptions that match the request.
|
733
|
+
# Optional. The subscriptions that match the request.
|
421
734
|
# Corresponds to the JSON property `subscriptions`
|
422
735
|
# @return [Array<Google::Apis::PubsubV1::Subscription>]
|
423
736
|
attr_accessor :subscriptions
|
@@ -437,14 +750,14 @@ module Google
|
|
437
750
|
class ListTopicSnapshotsResponse
|
438
751
|
include Google::Apis::Core::Hashable
|
439
752
|
|
440
|
-
# If not empty, indicates that there may be more snapshots that match
|
441
|
-
# request; this value should be passed in a new `ListTopicSnapshotsRequest`
|
442
|
-
# get more snapshots.
|
753
|
+
# Optional. If not empty, indicates that there may be more snapshots that match
|
754
|
+
# the request; this value should be passed in a new `ListTopicSnapshotsRequest`
|
755
|
+
# to get more snapshots.
|
443
756
|
# Corresponds to the JSON property `nextPageToken`
|
444
757
|
# @return [String]
|
445
758
|
attr_accessor :next_page_token
|
446
759
|
|
447
|
-
# The names of the snapshots that match the request.
|
760
|
+
# Optional. The names of the snapshots that match the request.
|
448
761
|
# Corresponds to the JSON property `snapshots`
|
449
762
|
# @return [Array<String>]
|
450
763
|
attr_accessor :snapshots
|
@@ -464,14 +777,15 @@ module Google
|
|
464
777
|
class ListTopicSubscriptionsResponse
|
465
778
|
include Google::Apis::Core::Hashable
|
466
779
|
|
467
|
-
# If not empty, indicates that there may be more subscriptions that
|
468
|
-
# request; this value should be passed in a new `
|
469
|
-
# to get more subscriptions.
|
780
|
+
# Optional. If not empty, indicates that there may be more subscriptions that
|
781
|
+
# match the request; this value should be passed in a new `
|
782
|
+
# ListTopicSubscriptionsRequest` to get more subscriptions.
|
470
783
|
# Corresponds to the JSON property `nextPageToken`
|
471
784
|
# @return [String]
|
472
785
|
attr_accessor :next_page_token
|
473
786
|
|
474
|
-
# The names of subscriptions attached to the topic specified in the
|
787
|
+
# Optional. The names of subscriptions attached to the topic specified in the
|
788
|
+
# request.
|
475
789
|
# Corresponds to the JSON property `subscriptions`
|
476
790
|
# @return [Array<String>]
|
477
791
|
attr_accessor :subscriptions
|
@@ -491,13 +805,13 @@ module Google
|
|
491
805
|
class ListTopicsResponse
|
492
806
|
include Google::Apis::Core::Hashable
|
493
807
|
|
494
|
-
# If not empty, indicates that there may be more topics that match the
|
495
|
-
# this value should be passed in a new `ListTopicsRequest`.
|
808
|
+
# Optional. If not empty, indicates that there may be more topics that match the
|
809
|
+
# request; this value should be passed in a new `ListTopicsRequest`.
|
496
810
|
# Corresponds to the JSON property `nextPageToken`
|
497
811
|
# @return [String]
|
498
812
|
attr_accessor :next_page_token
|
499
813
|
|
500
|
-
# The resulting topics.
|
814
|
+
# Optional. The resulting topics.
|
501
815
|
# Corresponds to the JSON property `topics`
|
502
816
|
# @return [Array<Google::Apis::PubsubV1::Topic>]
|
503
817
|
attr_accessor :topics
|
@@ -517,15 +831,25 @@ module Google
|
|
517
831
|
class MessageStoragePolicy
|
518
832
|
include Google::Apis::Core::Hashable
|
519
833
|
|
520
|
-
# A list of IDs of
|
521
|
-
# may be persisted in storage. Messages published by
|
522
|
-
# allowed
|
523
|
-
# storage in one of the allowed regions.
|
524
|
-
# allowed, and is not a valid
|
834
|
+
# Optional. A list of IDs of Google Cloud regions where messages that are
|
835
|
+
# published to the topic may be persisted in storage. Messages published by
|
836
|
+
# publishers running in non-allowed Google Cloud regions (or running outside of
|
837
|
+
# Google Cloud altogether) are routed for storage in one of the allowed regions.
|
838
|
+
# An empty list means that no regions are allowed, and is not a valid
|
839
|
+
# configuration.
|
525
840
|
# Corresponds to the JSON property `allowedPersistenceRegions`
|
526
841
|
# @return [Array<String>]
|
527
842
|
attr_accessor :allowed_persistence_regions
|
528
843
|
|
844
|
+
# Optional. If true, `allowed_persistence_regions` is also used to enforce in-
|
845
|
+
# transit guarantees for messages. That is, Pub/Sub will fail Publish operations
|
846
|
+
# on this topic and subscribe operations on any subscription attached to this
|
847
|
+
# topic in any region that is not in `allowed_persistence_regions`.
|
848
|
+
# Corresponds to the JSON property `enforceInTransit`
|
849
|
+
# @return [Boolean]
|
850
|
+
attr_accessor :enforce_in_transit
|
851
|
+
alias_method :enforce_in_transit?, :enforce_in_transit
|
852
|
+
|
529
853
|
def initialize(**args)
|
530
854
|
update!(**args)
|
531
855
|
end
|
@@ -533,6 +857,7 @@ module Google
|
|
533
857
|
# Update properties of this object
|
534
858
|
def update!(**args)
|
535
859
|
@allowed_persistence_regions = args[:allowed_persistence_regions] if args.key?(:allowed_persistence_regions)
|
860
|
+
@enforce_in_transit = args[:enforce_in_transit] if args.key?(:enforce_in_transit)
|
536
861
|
end
|
537
862
|
end
|
538
863
|
|
@@ -546,8 +871,8 @@ module Google
|
|
546
871
|
# zero might immediately make the message available for delivery to another
|
547
872
|
# subscriber client. This typically results in an increase in the rate of
|
548
873
|
# message redeliveries (that is, duplicates). The minimum deadline you can
|
549
|
-
# specify is 0 seconds. The maximum deadline you can specify
|
550
|
-
# minutes).
|
874
|
+
# specify is 0 seconds. The maximum deadline you can specify in a single request
|
875
|
+
# is 600 seconds (10 minutes).
|
551
876
|
# Corresponds to the JSON property `ackDeadlineSeconds`
|
552
877
|
# @return [Fixnum]
|
553
878
|
attr_accessor :ack_deadline_seconds
|
@@ -587,25 +912,47 @@ module Google
|
|
587
912
|
end
|
588
913
|
end
|
589
914
|
|
915
|
+
# Sets the `data` field as the HTTP body for delivery.
|
916
|
+
class NoWrapper
|
917
|
+
include Google::Apis::Core::Hashable
|
918
|
+
|
919
|
+
# Optional. When true, writes the Pub/Sub message metadata to `x-goog-pubsub-:`
|
920
|
+
# headers of the HTTP request. Writes the Pub/Sub message attributes to `:`
|
921
|
+
# headers of the HTTP request.
|
922
|
+
# Corresponds to the JSON property `writeMetadata`
|
923
|
+
# @return [Boolean]
|
924
|
+
attr_accessor :write_metadata
|
925
|
+
alias_method :write_metadata?, :write_metadata
|
926
|
+
|
927
|
+
def initialize(**args)
|
928
|
+
update!(**args)
|
929
|
+
end
|
930
|
+
|
931
|
+
# Update properties of this object
|
932
|
+
def update!(**args)
|
933
|
+
@write_metadata = args[:write_metadata] if args.key?(:write_metadata)
|
934
|
+
end
|
935
|
+
end
|
936
|
+
|
590
937
|
# Contains information needed for generating an [OpenID Connect token](https://
|
591
|
-
# developers.google.com/identity/protocols/OpenIDConnect).
|
592
|
-
# email](https://cloud.google.com/iam/docs/service-accounts) used for generating
|
593
|
-
# the OIDC token. For more information on setting up authentication, see [Push
|
594
|
-
# subscriptions](https://cloud.google.com/pubsub/docs/push).
|
938
|
+
# developers.google.com/identity/protocols/OpenIDConnect).
|
595
939
|
class OidcToken
|
596
940
|
include Google::Apis::Core::Hashable
|
597
941
|
|
598
|
-
# Audience to be used when generating OIDC token. The audience claim
|
599
|
-
# the recipients that the JWT is intended for. The audience value is
|
600
|
-
# case-sensitive string. Having multiple values (array) for the
|
601
|
-
# is not supported. More info about the OIDC JWT token audience
|
602
|
-
# tools.ietf.org/html/rfc7519#section-4.1.3 Note: if not specified,
|
603
|
-
# endpoint URL will be used.
|
942
|
+
# Optional. Audience to be used when generating OIDC token. The audience claim
|
943
|
+
# identifies the recipients that the JWT is intended for. The audience value is
|
944
|
+
# a single case-sensitive string. Having multiple values (array) for the
|
945
|
+
# audience field is not supported. More info about the OIDC JWT token audience
|
946
|
+
# here: https://tools.ietf.org/html/rfc7519#section-4.1.3 Note: if not specified,
|
947
|
+
# the Push endpoint URL will be used.
|
604
948
|
# Corresponds to the JSON property `audience`
|
605
949
|
# @return [String]
|
606
950
|
attr_accessor :audience
|
607
951
|
|
608
|
-
#
|
952
|
+
# Optional. [Service account email](https://cloud.google.com/iam/docs/service-
|
953
|
+
# accounts) used for generating the OIDC token. For more information on setting
|
954
|
+
# up authentication, see [Push subscriptions](https://cloud.google.com/pubsub/
|
955
|
+
# docs/push).
|
609
956
|
# Corresponds to the JSON property `serviceAccountEmail`
|
610
957
|
# @return [String]
|
611
958
|
attr_accessor :service_account_email
|
@@ -632,22 +979,22 @@ module Google
|
|
632
979
|
# evaluates to `true`. A condition can add constraints based on attributes of
|
633
980
|
# the request, the resource, or both. To learn which resources support
|
634
981
|
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
635
|
-
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
982
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
|
636
983
|
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
637
984
|
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
638
985
|
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
639
986
|
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
640
987
|
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
641
988
|
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
642
|
-
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML
|
643
|
-
# bindings: - members: - user:mike@example.com - group:admins@
|
644
|
-
# domain:google.com - serviceAccount:my-project-id@appspot.
|
645
|
-
# role: roles/resourcemanager.organizationAdmin - members: -
|
646
|
-
# com role: roles/resourcemanager.organizationViewer condition:
|
647
|
-
# access description: Does not grant access after Sep 2020
|
648
|
-
# time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
649
|
-
# a description of IAM and its features, see the
|
650
|
-
# cloud.google.com/iam/docs/).
|
989
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
|
990
|
+
# example:** ``` bindings: - members: - user:mike@example.com - group:admins@
|
991
|
+
# example.com - domain:google.com - serviceAccount:my-project-id@appspot.
|
992
|
+
# gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
|
993
|
+
# user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
|
994
|
+
# title: expirable access description: Does not grant access after Sep 2020
|
995
|
+
# expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
996
|
+
# BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
|
997
|
+
# [IAM documentation](https://cloud.google.com/iam/docs/).
|
651
998
|
class Policy
|
652
999
|
include Google::Apis::Core::Hashable
|
653
1000
|
|
@@ -733,8 +1080,9 @@ module Google
|
|
733
1080
|
class PublishResponse
|
734
1081
|
include Google::Apis::Core::Hashable
|
735
1082
|
|
736
|
-
# The server-assigned ID of each published message, in the same order
|
737
|
-
# messages in the request. IDs are guaranteed to be unique within the
|
1083
|
+
# Optional. The server-assigned ID of each published message, in the same order
|
1084
|
+
# as the messages in the request. IDs are guaranteed to be unique within the
|
1085
|
+
# topic.
|
738
1086
|
# Corresponds to the JSON property `messageIds`
|
739
1087
|
# @return [Array<String>]
|
740
1088
|
attr_accessor :message_ids
|
@@ -759,14 +1107,15 @@ module Google
|
|
759
1107
|
class Message
|
760
1108
|
include Google::Apis::Core::Hashable
|
761
1109
|
|
762
|
-
# Attributes for this message. If this field is empty, the message
|
763
|
-
# non-empty data. This can be used to filter messages on the
|
1110
|
+
# Optional. Attributes for this message. If this field is empty, the message
|
1111
|
+
# must contain non-empty data. This can be used to filter messages on the
|
1112
|
+
# subscription.
|
764
1113
|
# Corresponds to the JSON property `attributes`
|
765
1114
|
# @return [Hash<String,String>]
|
766
1115
|
attr_accessor :attributes
|
767
1116
|
|
768
|
-
# The message data field. If this field is empty, the message must
|
769
|
-
# least one attribute.
|
1117
|
+
# Optional. The message data field. If this field is empty, the message must
|
1118
|
+
# contain at least one attribute.
|
770
1119
|
# Corresponds to the JSON property `data`
|
771
1120
|
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
772
1121
|
# @return [String]
|
@@ -780,9 +1129,9 @@ module Google
|
|
780
1129
|
# @return [String]
|
781
1130
|
attr_accessor :message_id
|
782
1131
|
|
783
|
-
# If non-empty, identifies related messages for which publish order
|
784
|
-
# respected. If a `Subscription` has `enable_message_ordering` set to `
|
785
|
-
# messages published with the same non-empty `ordering_key` value will be
|
1132
|
+
# Optional. If non-empty, identifies related messages for which publish order
|
1133
|
+
# should be respected. If a `Subscription` has `enable_message_ordering` set to `
|
1134
|
+
# true`, messages published with the same non-empty `ordering_key` value will be
|
786
1135
|
# delivered to subscribers in the order in which they are received by the Pub/
|
787
1136
|
# Sub system. All `PubsubMessage`s published in a given `PublishRequest` must
|
788
1137
|
# specify the same `ordering_key` value. For more information, see [ordering
|
@@ -812,6 +1161,21 @@ module Google
|
|
812
1161
|
end
|
813
1162
|
end
|
814
1163
|
|
1164
|
+
# The payload to the push endpoint is in the form of the JSON representation of
|
1165
|
+
# a PubsubMessage (https://cloud.google.com/pubsub/docs/reference/rpc/google.
|
1166
|
+
# pubsub.v1#pubsubmessage).
|
1167
|
+
class PubsubWrapper
|
1168
|
+
include Google::Apis::Core::Hashable
|
1169
|
+
|
1170
|
+
def initialize(**args)
|
1171
|
+
update!(**args)
|
1172
|
+
end
|
1173
|
+
|
1174
|
+
# Update properties of this object
|
1175
|
+
def update!(**args)
|
1176
|
+
end
|
1177
|
+
end
|
1178
|
+
|
815
1179
|
# Request for the `Pull` method.
|
816
1180
|
class PullRequest
|
817
1181
|
include Google::Apis::Core::Hashable
|
@@ -850,10 +1214,11 @@ module Google
|
|
850
1214
|
class PullResponse
|
851
1215
|
include Google::Apis::Core::Hashable
|
852
1216
|
|
853
|
-
# Received Pub/Sub messages. The list will be empty if there are no
|
854
|
-
# messages available in the backlog
|
855
|
-
#
|
856
|
-
#
|
1217
|
+
# Optional. Received Pub/Sub messages. The list will be empty if there are no
|
1218
|
+
# more messages available in the backlog, or if no messages could be returned
|
1219
|
+
# before the request timeout. For JSON, the response can be entirely empty. The
|
1220
|
+
# Pub/Sub system may return fewer than the `maxMessages` requested even if there
|
1221
|
+
# are more messages available in the backlog.
|
857
1222
|
# Corresponds to the JSON property `receivedMessages`
|
858
1223
|
# @return [Array<Google::Apis::PubsubV1::ReceivedMessage>]
|
859
1224
|
attr_accessor :received_messages
|
@@ -872,34 +1237,43 @@ module Google
|
|
872
1237
|
class PushConfig
|
873
1238
|
include Google::Apis::Core::Hashable
|
874
1239
|
|
875
|
-
# Endpoint configuration attributes that can be used to control
|
876
|
-
# aspects of the message delivery. The only currently supported
|
877
|
-
# goog-version`, which you can use to change the format of the
|
878
|
-
# This attribute indicates the version of the data expected by
|
879
|
-
# This controls the shape of the pushed message (i.e., its fields
|
880
|
-
# If not present during the `CreateSubscription` call, it will
|
881
|
-
# version of the Pub/Sub API used to make such call. If not
|
882
|
-
# ModifyPushConfig` call, its value will not be changed. `
|
883
|
-
# will always return a valid version, even if the
|
884
|
-
# without this attribute. The only supported values for
|
885
|
-
# attribute are: * `v1beta1`: uses the push format defined
|
886
|
-
# Sub API. * `v1` or `v1beta2`: uses the push format defined
|
887
|
-
# API. For example: `attributes ` "x-goog-version": "v1" ``
|
1240
|
+
# Optional. Endpoint configuration attributes that can be used to control
|
1241
|
+
# different aspects of the message delivery. The only currently supported
|
1242
|
+
# attribute is `x-goog-version`, which you can use to change the format of the
|
1243
|
+
# pushed message. This attribute indicates the version of the data expected by
|
1244
|
+
# the endpoint. This controls the shape of the pushed message (i.e., its fields
|
1245
|
+
# and metadata). If not present during the `CreateSubscription` call, it will
|
1246
|
+
# default to the version of the Pub/Sub API used to make such call. If not
|
1247
|
+
# present in a `ModifyPushConfig` call, its value will not be changed. `
|
1248
|
+
# GetSubscription` calls will always return a valid version, even if the
|
1249
|
+
# subscription was created without this attribute. The only supported values for
|
1250
|
+
# the `x-goog-version` attribute are: * `v1beta1`: uses the push format defined
|
1251
|
+
# in the v1beta1 Pub/Sub API. * `v1` or `v1beta2`: uses the push format defined
|
1252
|
+
# in the v1 Pub/Sub API. For example: `attributes ` "x-goog-version": "v1" ``
|
888
1253
|
# Corresponds to the JSON property `attributes`
|
889
1254
|
# @return [Hash<String,String>]
|
890
1255
|
attr_accessor :attributes
|
891
1256
|
|
1257
|
+
# Sets the `data` field as the HTTP body for delivery.
|
1258
|
+
# Corresponds to the JSON property `noWrapper`
|
1259
|
+
# @return [Google::Apis::PubsubV1::NoWrapper]
|
1260
|
+
attr_accessor :no_wrapper
|
1261
|
+
|
892
1262
|
# Contains information needed for generating an [OpenID Connect token](https://
|
893
|
-
# developers.google.com/identity/protocols/OpenIDConnect).
|
894
|
-
# email](https://cloud.google.com/iam/docs/service-accounts) used for generating
|
895
|
-
# the OIDC token. For more information on setting up authentication, see [Push
|
896
|
-
# subscriptions](https://cloud.google.com/pubsub/docs/push).
|
1263
|
+
# developers.google.com/identity/protocols/OpenIDConnect).
|
897
1264
|
# Corresponds to the JSON property `oidcToken`
|
898
1265
|
# @return [Google::Apis::PubsubV1::OidcToken]
|
899
1266
|
attr_accessor :oidc_token
|
900
1267
|
|
901
|
-
#
|
902
|
-
#
|
1268
|
+
# The payload to the push endpoint is in the form of the JSON representation of
|
1269
|
+
# a PubsubMessage (https://cloud.google.com/pubsub/docs/reference/rpc/google.
|
1270
|
+
# pubsub.v1#pubsubmessage).
|
1271
|
+
# Corresponds to the JSON property `pubsubWrapper`
|
1272
|
+
# @return [Google::Apis::PubsubV1::PubsubWrapper]
|
1273
|
+
attr_accessor :pubsub_wrapper
|
1274
|
+
|
1275
|
+
# Optional. A URL locating the endpoint to which messages should be pushed. For
|
1276
|
+
# example, a Webhook endpoint might use `https://example.com/push`.
|
903
1277
|
# Corresponds to the JSON property `pushEndpoint`
|
904
1278
|
# @return [String]
|
905
1279
|
attr_accessor :push_endpoint
|
@@ -911,7 +1285,9 @@ module Google
|
|
911
1285
|
# Update properties of this object
|
912
1286
|
def update!(**args)
|
913
1287
|
@attributes = args[:attributes] if args.key?(:attributes)
|
1288
|
+
@no_wrapper = args[:no_wrapper] if args.key?(:no_wrapper)
|
914
1289
|
@oidc_token = args[:oidc_token] if args.key?(:oidc_token)
|
1290
|
+
@pubsub_wrapper = args[:pubsub_wrapper] if args.key?(:pubsub_wrapper)
|
915
1291
|
@push_endpoint = args[:push_endpoint] if args.key?(:push_endpoint)
|
916
1292
|
end
|
917
1293
|
end
|
@@ -920,16 +1296,16 @@ module Google
|
|
920
1296
|
class ReceivedMessage
|
921
1297
|
include Google::Apis::Core::Hashable
|
922
1298
|
|
923
|
-
# This ID can be used to acknowledge the received message.
|
1299
|
+
# Optional. This ID can be used to acknowledge the received message.
|
924
1300
|
# Corresponds to the JSON property `ackId`
|
925
1301
|
# @return [String]
|
926
1302
|
attr_accessor :ack_id
|
927
1303
|
|
928
|
-
# The approximate number of times that
|
929
|
-
# the associated message to a subscriber. More precisely, this is 1 + (
|
930
|
-
# NACKs) + (number of ack_deadline exceeds) for this message. A NACK
|
931
|
-
# to ModifyAckDeadline with a 0 deadline. An ack_deadline exceeds
|
932
|
-
# whenever a message is not acknowledged within ack_deadline. Note that
|
1304
|
+
# Optional. The approximate number of times that Pub/Sub has attempted to
|
1305
|
+
# deliver the associated message to a subscriber. More precisely, this is 1 + (
|
1306
|
+
# number of NACKs) + (number of ack_deadline exceeds) for this message. A NACK
|
1307
|
+
# is any call to ModifyAckDeadline with a 0 deadline. An ack_deadline exceeds
|
1308
|
+
# event is whenever a message is not acknowledged within ack_deadline. Note that
|
933
1309
|
# ack_deadline is initially Subscription.ackDeadlineSeconds, but may get
|
934
1310
|
# extended automatically by the client library. Upon the first delivery of a
|
935
1311
|
# given message, `delivery_attempt` will have a value of 1. The value is
|
@@ -962,24 +1338,24 @@ module Google
|
|
962
1338
|
end
|
963
1339
|
end
|
964
1340
|
|
965
|
-
# A policy that specifies how
|
966
|
-
#
|
967
|
-
#
|
968
|
-
#
|
969
|
-
#
|
970
|
-
#
|
971
|
-
#
|
1341
|
+
# A policy that specifies how Pub/Sub retries message delivery. Retry delay will
|
1342
|
+
# be exponential based on provided minimum and maximum backoffs. https://en.
|
1343
|
+
# wikipedia.org/wiki/Exponential_backoff. RetryPolicy will be triggered on NACKs
|
1344
|
+
# or acknowledgement deadline exceeded events for a given message. Retry Policy
|
1345
|
+
# is implemented on a best effort basis. At times, the delay between consecutive
|
1346
|
+
# deliveries may not match the configuration. That is, delay can be more or less
|
1347
|
+
# than configured backoff.
|
972
1348
|
class RetryPolicy
|
973
1349
|
include Google::Apis::Core::Hashable
|
974
1350
|
|
975
|
-
# The maximum delay between consecutive deliveries of a given message.
|
976
|
-
# should be between 0 and 600 seconds. Defaults to 600 seconds.
|
1351
|
+
# Optional. The maximum delay between consecutive deliveries of a given message.
|
1352
|
+
# Value should be between 0 and 600 seconds. Defaults to 600 seconds.
|
977
1353
|
# Corresponds to the JSON property `maximumBackoff`
|
978
1354
|
# @return [String]
|
979
1355
|
attr_accessor :maximum_backoff
|
980
1356
|
|
981
|
-
# The minimum delay between consecutive deliveries of a given message.
|
982
|
-
# should be between 0 and 600 seconds. Defaults to 10 seconds.
|
1357
|
+
# Optional. The minimum delay between consecutive deliveries of a given message.
|
1358
|
+
# Value should be between 0 and 600 seconds. Defaults to 10 seconds.
|
983
1359
|
# Corresponds to the JSON property `minimumBackoff`
|
984
1360
|
# @return [String]
|
985
1361
|
attr_accessor :minimum_backoff
|
@@ -995,6 +1371,26 @@ module Google
|
|
995
1371
|
end
|
996
1372
|
end
|
997
1373
|
|
1374
|
+
# Request for the `RollbackSchema` method.
|
1375
|
+
class RollbackSchemaRequest
|
1376
|
+
include Google::Apis::Core::Hashable
|
1377
|
+
|
1378
|
+
# Required. The revision ID to roll back to. It must be a revision of the same
|
1379
|
+
# schema. Example: c7cfa2a8
|
1380
|
+
# Corresponds to the JSON property `revisionId`
|
1381
|
+
# @return [String]
|
1382
|
+
attr_accessor :revision_id
|
1383
|
+
|
1384
|
+
def initialize(**args)
|
1385
|
+
update!(**args)
|
1386
|
+
end
|
1387
|
+
|
1388
|
+
# Update properties of this object
|
1389
|
+
def update!(**args)
|
1390
|
+
@revision_id = args[:revision_id] if args.key?(:revision_id)
|
1391
|
+
end
|
1392
|
+
end
|
1393
|
+
|
998
1394
|
# A schema resource.
|
999
1395
|
class Schema
|
1000
1396
|
include Google::Apis::Core::Hashable
|
@@ -1044,21 +1440,21 @@ module Google
|
|
1044
1440
|
class SchemaSettings
|
1045
1441
|
include Google::Apis::Core::Hashable
|
1046
1442
|
|
1047
|
-
# The encoding of messages validated against `schema`.
|
1443
|
+
# Optional. The encoding of messages validated against `schema`.
|
1048
1444
|
# Corresponds to the JSON property `encoding`
|
1049
1445
|
# @return [String]
|
1050
1446
|
attr_accessor :encoding
|
1051
1447
|
|
1052
|
-
# The minimum (inclusive) revision allowed for validating messages. If
|
1053
|
-
# not present, allow any revision to be validated against last_revision
|
1054
|
-
# revision created before.
|
1448
|
+
# Optional. The minimum (inclusive) revision allowed for validating messages. If
|
1449
|
+
# empty or not present, allow any revision to be validated against last_revision
|
1450
|
+
# or any revision created before.
|
1055
1451
|
# Corresponds to the JSON property `firstRevisionId`
|
1056
1452
|
# @return [String]
|
1057
1453
|
attr_accessor :first_revision_id
|
1058
1454
|
|
1059
|
-
# The maximum (inclusive) revision allowed for validating messages. If
|
1060
|
-
# not present, allow any revision to be validated against
|
1061
|
-
# revision created after.
|
1455
|
+
# Optional. The maximum (inclusive) revision allowed for validating messages. If
|
1456
|
+
# empty or not present, allow any revision to be validated against
|
1457
|
+
# first_revision or any revision created after.
|
1062
1458
|
# Corresponds to the JSON property `lastRevisionId`
|
1063
1459
|
# @return [String]
|
1064
1460
|
attr_accessor :last_revision_id
|
@@ -1087,21 +1483,23 @@ module Google
|
|
1087
1483
|
class SeekRequest
|
1088
1484
|
include Google::Apis::Core::Hashable
|
1089
1485
|
|
1090
|
-
# The snapshot to seek to. The snapshot's topic must be the same as
|
1091
|
-
# provided subscription. Format is `projects/`project`/snapshots/`
|
1486
|
+
# Optional. The snapshot to seek to. The snapshot's topic must be the same as
|
1487
|
+
# that of the provided subscription. Format is `projects/`project`/snapshots/`
|
1488
|
+
# snap``.
|
1092
1489
|
# Corresponds to the JSON property `snapshot`
|
1093
1490
|
# @return [String]
|
1094
1491
|
attr_accessor :snapshot
|
1095
1492
|
|
1096
|
-
# The time to seek to. Messages retained in the subscription that were
|
1097
|
-
# before this time are marked as acknowledged, and messages retained
|
1098
|
-
# subscription that were published after this time are marked as
|
1099
|
-
# Note that this operation affects only those messages retained
|
1100
|
-
# subscription (configured by the combination of `
|
1101
|
-
# and `retain_acked_messages`). For example, if `
|
1102
|
-
# before the message retention window (or to a
|
1103
|
-
# of the subscription creation time), only
|
1104
|
-
# unacknowledged, and already-expunged
|
1493
|
+
# Optional. The time to seek to. Messages retained in the subscription that were
|
1494
|
+
# published before this time are marked as acknowledged, and messages retained
|
1495
|
+
# in the subscription that were published after this time are marked as
|
1496
|
+
# unacknowledged. Note that this operation affects only those messages retained
|
1497
|
+
# in the subscription (configured by the combination of `
|
1498
|
+
# message_retention_duration` and `retain_acked_messages`). For example, if `
|
1499
|
+
# time` corresponds to a point before the message retention window (or to a
|
1500
|
+
# point before the system's notion of the subscription creation time), only
|
1501
|
+
# retained messages will be marked as unacknowledged, and already-expunged
|
1502
|
+
# messages will not be restored.
|
1105
1503
|
# Corresponds to the JSON property `time`
|
1106
1504
|
# @return [String]
|
1107
1505
|
attr_accessor :time
|
@@ -1145,22 +1543,22 @@ module Google
|
|
1145
1543
|
# evaluates to `true`. A condition can add constraints based on attributes of
|
1146
1544
|
# the request, the resource, or both. To learn which resources support
|
1147
1545
|
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
1148
|
-
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
1546
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
|
1149
1547
|
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
1150
1548
|
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
1151
1549
|
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
1152
1550
|
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
1153
1551
|
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
1154
1552
|
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
1155
|
-
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML
|
1156
|
-
# bindings: - members: - user:mike@example.com - group:admins@
|
1157
|
-
# domain:google.com - serviceAccount:my-project-id@appspot.
|
1158
|
-
# role: roles/resourcemanager.organizationAdmin - members: -
|
1159
|
-
# com role: roles/resourcemanager.organizationViewer condition:
|
1160
|
-
# access description: Does not grant access after Sep 2020
|
1161
|
-
# time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
1162
|
-
# a description of IAM and its features, see the
|
1163
|
-
# cloud.google.com/iam/docs/).
|
1553
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
|
1554
|
+
# example:** ``` bindings: - members: - user:mike@example.com - group:admins@
|
1555
|
+
# example.com - domain:google.com - serviceAccount:my-project-id@appspot.
|
1556
|
+
# gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
|
1557
|
+
# user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
|
1558
|
+
# title: expirable access description: Does not grant access after Sep 2020
|
1559
|
+
# expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
|
1560
|
+
# BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
|
1561
|
+
# [IAM documentation](https://cloud.google.com/iam/docs/).
|
1164
1562
|
# Corresponds to the JSON property `policy`
|
1165
1563
|
# @return [Google::Apis::PubsubV1::Policy]
|
1166
1564
|
attr_accessor :policy
|
@@ -1182,11 +1580,11 @@ module Google
|
|
1182
1580
|
class Snapshot
|
1183
1581
|
include Google::Apis::Core::Hashable
|
1184
1582
|
|
1185
|
-
# The snapshot is guaranteed to exist up until this time. A newly-
|
1186
|
-
# snapshot expires no later than 7 days from the time of its creation.
|
1187
|
-
# lifetime is determined at creation by the existing backlog in the
|
1188
|
-
# subscription. Specifically, the lifetime of the snapshot is `7 days - (
|
1189
|
-
# oldest unacked message in the subscription)`. For example, consider a
|
1583
|
+
# Optional. The snapshot is guaranteed to exist up until this time. A newly-
|
1584
|
+
# created snapshot expires no later than 7 days from the time of its creation.
|
1585
|
+
# Its exact lifetime is determined at creation by the existing backlog in the
|
1586
|
+
# source subscription. Specifically, the lifetime of the snapshot is `7 days - (
|
1587
|
+
# age of oldest unacked message in the subscription)`. For example, consider a
|
1190
1588
|
# subscription whose oldest unacked message is 3 days old. If a snapshot is
|
1191
1589
|
# created from this subscription, the snapshot -- which will always capture this
|
1192
1590
|
# 3-day-old backlog as long as the snapshot exists -- will expire in 4 days. The
|
@@ -1196,18 +1594,18 @@ module Google
|
|
1196
1594
|
# @return [String]
|
1197
1595
|
attr_accessor :expire_time
|
1198
1596
|
|
1199
|
-
# See [Creating and managing labels] (https://cloud.google.com/pubsub/
|
1200
|
-
# labels).
|
1597
|
+
# Optional. See [Creating and managing labels] (https://cloud.google.com/pubsub/
|
1598
|
+
# docs/labels).
|
1201
1599
|
# Corresponds to the JSON property `labels`
|
1202
1600
|
# @return [Hash<String,String>]
|
1203
1601
|
attr_accessor :labels
|
1204
1602
|
|
1205
|
-
# The name of the snapshot.
|
1603
|
+
# Optional. The name of the snapshot.
|
1206
1604
|
# Corresponds to the JSON property `name`
|
1207
1605
|
# @return [String]
|
1208
1606
|
attr_accessor :name
|
1209
1607
|
|
1210
|
-
# The name of the topic from which this snapshot is retaining messages.
|
1608
|
+
# Optional. The name of the topic from which this snapshot is retaining messages.
|
1211
1609
|
# Corresponds to the JSON property `topic`
|
1212
1610
|
# @return [String]
|
1213
1611
|
attr_accessor :topic
|
@@ -1225,20 +1623,20 @@ module Google
|
|
1225
1623
|
end
|
1226
1624
|
end
|
1227
1625
|
|
1228
|
-
# A subscription resource. If none of `push_config` or `
|
1229
|
-
# then the subscriber will pull and ack messages
|
1230
|
-
# of these fields may be set.
|
1626
|
+
# A subscription resource. If none of `push_config`, `bigquery_config`, or `
|
1627
|
+
# cloud_storage_config` is set, then the subscriber will pull and ack messages
|
1628
|
+
# using API methods. At most one of these fields may be set.
|
1231
1629
|
class Subscription
|
1232
1630
|
include Google::Apis::Core::Hashable
|
1233
1631
|
|
1234
|
-
# The approximate amount of time (on a best-effort basis) Pub/Sub
|
1235
|
-
# subscriber to acknowledge receipt before resending the message.
|
1236
|
-
# interval after the message is delivered and before it is acknowledged,
|
1237
|
-
# considered to be _outstanding_. During that time period, the message
|
1238
|
-
# be redelivered (on a best-effort basis). For pull subscriptions, this
|
1239
|
-
# used as the initial value for the ack deadline. To override this
|
1240
|
-
# given message, call `ModifyAckDeadline` with the corresponding `
|
1241
|
-
# using non-streaming pull or send the `ack_id` in a `
|
1632
|
+
# Optional. The approximate amount of time (on a best-effort basis) Pub/Sub
|
1633
|
+
# waits for the subscriber to acknowledge receipt before resending the message.
|
1634
|
+
# In the interval after the message is delivered and before it is acknowledged,
|
1635
|
+
# it is considered to be _outstanding_. During that time period, the message
|
1636
|
+
# will not be redelivered (on a best-effort basis). For pull subscriptions, this
|
1637
|
+
# value is used as the initial value for the ack deadline. To override this
|
1638
|
+
# value for a given message, call `ModifyAckDeadline` with the corresponding `
|
1639
|
+
# ack_id` if using non-streaming pull or send the `ack_id` in a `
|
1242
1640
|
# StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom
|
1243
1641
|
# deadline you can specify is 10 seconds. The maximum custom deadline you can
|
1244
1642
|
# specify is 600 seconds (10 minutes). If this parameter is 0, a default value
|
@@ -1250,11 +1648,22 @@ module Google
|
|
1250
1648
|
# @return [Fixnum]
|
1251
1649
|
attr_accessor :ack_deadline_seconds
|
1252
1650
|
|
1651
|
+
# Information about an associated Analytics Hub subscription (https://cloud.
|
1652
|
+
# google.com/bigquery/docs/analytics-hub-manage-subscriptions).
|
1653
|
+
# Corresponds to the JSON property `analyticsHubSubscriptionInfo`
|
1654
|
+
# @return [Google::Apis::PubsubV1::AnalyticsHubSubscriptionInfo]
|
1655
|
+
attr_accessor :analytics_hub_subscription_info
|
1656
|
+
|
1253
1657
|
# Configuration for a BigQuery subscription.
|
1254
1658
|
# Corresponds to the JSON property `bigqueryConfig`
|
1255
1659
|
# @return [Google::Apis::PubsubV1::BigQueryConfig]
|
1256
1660
|
attr_accessor :bigquery_config
|
1257
1661
|
|
1662
|
+
# Configuration for a Cloud Storage subscription.
|
1663
|
+
# Corresponds to the JSON property `cloudStorageConfig`
|
1664
|
+
# @return [Google::Apis::PubsubV1::CloudStorageConfig]
|
1665
|
+
attr_accessor :cloud_storage_config
|
1666
|
+
|
1258
1667
|
# Dead lettering is done on a best effort basis. The same message might be dead
|
1259
1668
|
# lettered multiple times. If validation on any of the fields fails at
|
1260
1669
|
# subscription creation/updation, the create/update subscription request will
|
@@ -1263,32 +1672,33 @@ module Google
|
|
1263
1672
|
# @return [Google::Apis::PubsubV1::DeadLetterPolicy]
|
1264
1673
|
attr_accessor :dead_letter_policy
|
1265
1674
|
|
1266
|
-
# Indicates whether the subscription is detached from its topic.
|
1267
|
-
# subscriptions don't receive messages from their topic and don't
|
1268
|
-
# backlog. `Pull` and `StreamingPull` requests will return
|
1269
|
-
# If the subscription is a push subscription, pushes to the
|
1270
|
-
# made.
|
1675
|
+
# Optional. Indicates whether the subscription is detached from its topic.
|
1676
|
+
# Detached subscriptions don't receive messages from their topic and don't
|
1677
|
+
# retain any backlog. `Pull` and `StreamingPull` requests will return
|
1678
|
+
# FAILED_PRECONDITION. If the subscription is a push subscription, pushes to the
|
1679
|
+
# endpoint will not be made.
|
1271
1680
|
# Corresponds to the JSON property `detached`
|
1272
1681
|
# @return [Boolean]
|
1273
1682
|
attr_accessor :detached
|
1274
1683
|
alias_method :detached?, :detached
|
1275
1684
|
|
1276
|
-
# If true, Pub/Sub provides the following guarantees for the delivery
|
1277
|
-
# message with a given value of `message_id` on this subscription: * The
|
1278
|
-
# sent to a subscriber is guaranteed not to be resent before the message'
|
1279
|
-
# acknowledgement deadline expires. * An acknowledged message will not be
|
1280
|
-
# to a subscriber. Note that subscribers may still receive multiple
|
1281
|
-
# message when `enable_exactly_once_delivery` is true if the message
|
1282
|
-
# published multiple times by a publisher client. These copies are
|
1283
|
-
# distinct by Pub/Sub and have distinct `message_id` values.
|
1685
|
+
# Optional. If true, Pub/Sub provides the following guarantees for the delivery
|
1686
|
+
# of a message with a given value of `message_id` on this subscription: * The
|
1687
|
+
# message sent to a subscriber is guaranteed not to be resent before the message'
|
1688
|
+
# s acknowledgement deadline expires. * An acknowledged message will not be
|
1689
|
+
# resent to a subscriber. Note that subscribers may still receive multiple
|
1690
|
+
# copies of a message when `enable_exactly_once_delivery` is true if the message
|
1691
|
+
# was published multiple times by a publisher client. These copies are
|
1692
|
+
# considered distinct by Pub/Sub and have distinct `message_id` values.
|
1284
1693
|
# Corresponds to the JSON property `enableExactlyOnceDelivery`
|
1285
1694
|
# @return [Boolean]
|
1286
1695
|
attr_accessor :enable_exactly_once_delivery
|
1287
1696
|
alias_method :enable_exactly_once_delivery?, :enable_exactly_once_delivery
|
1288
1697
|
|
1289
|
-
# If true, messages published with the same `ordering_key` in `
|
1290
|
-
# will be delivered to the subscribers in the order in which they
|
1291
|
-
# by the Pub/Sub system. Otherwise, they may be delivered in any
|
1698
|
+
# Optional. If true, messages published with the same `ordering_key` in `
|
1699
|
+
# PubsubMessage` will be delivered to the subscribers in the order in which they
|
1700
|
+
# are received by the Pub/Sub system. Otherwise, they may be delivered in any
|
1701
|
+
# order.
|
1292
1702
|
# Corresponds to the JSON property `enableMessageOrdering`
|
1293
1703
|
# @return [Boolean]
|
1294
1704
|
attr_accessor :enable_message_ordering
|
@@ -1300,24 +1710,24 @@ module Google
|
|
1300
1710
|
# @return [Google::Apis::PubsubV1::ExpirationPolicy]
|
1301
1711
|
attr_accessor :expiration_policy
|
1302
1712
|
|
1303
|
-
# An expression written in the Pub/Sub [filter language](https://cloud.
|
1304
|
-
# com/pubsub/docs/filtering). If non-empty, then only `PubsubMessage`s
|
1305
|
-
# attributes` field matches the filter are delivered on this subscription.
|
1306
|
-
# empty, then no messages are filtered out.
|
1713
|
+
# Optional. An expression written in the Pub/Sub [filter language](https://cloud.
|
1714
|
+
# google.com/pubsub/docs/filtering). If non-empty, then only `PubsubMessage`s
|
1715
|
+
# whose `attributes` field matches the filter are delivered on this subscription.
|
1716
|
+
# If empty, then no messages are filtered out.
|
1307
1717
|
# Corresponds to the JSON property `filter`
|
1308
1718
|
# @return [String]
|
1309
1719
|
attr_accessor :filter
|
1310
1720
|
|
1311
|
-
# See [Creating and managing labels](https://cloud.google.com/pubsub/
|
1312
|
-
# .
|
1721
|
+
# Optional. See [Creating and managing labels](https://cloud.google.com/pubsub/
|
1722
|
+
# docs/labels).
|
1313
1723
|
# Corresponds to the JSON property `labels`
|
1314
1724
|
# @return [Hash<String,String>]
|
1315
1725
|
attr_accessor :labels
|
1316
1726
|
|
1317
|
-
# How long to retain unacknowledged messages in the subscription's
|
1318
|
-
# the moment a message is published. If `retain_acked_messages` is
|
1319
|
-
# this also configures the retention of acknowledged messages, and
|
1320
|
-
# configures how far back in time a `Seek` can be done. Defaults to 7 days.
|
1727
|
+
# Optional. How long to retain unacknowledged messages in the subscription's
|
1728
|
+
# backlog, from the moment a message is published. If `retain_acked_messages` is
|
1729
|
+
# true, then this also configures the retention of acknowledged messages, and
|
1730
|
+
# thus configures how far back in time a `Seek` can be done. Defaults to 7 days.
|
1321
1731
|
# Cannot be more than 7 days or less than 10 minutes.
|
1322
1732
|
# Corresponds to the JSON property `messageRetentionDuration`
|
1323
1733
|
# @return [String]
|
@@ -1338,24 +1748,24 @@ module Google
|
|
1338
1748
|
# @return [Google::Apis::PubsubV1::PushConfig]
|
1339
1749
|
attr_accessor :push_config
|
1340
1750
|
|
1341
|
-
# Indicates whether to retain acknowledged messages. If true, then
|
1342
|
-
# not expunged from the subscription's backlog, even if they are
|
1343
|
-
# until they fall out of the `message_retention_duration` window.
|
1344
|
-
# true if you would like to [`Seek` to a timestamp] (https://cloud.
|
1345
|
-
# pubsub/docs/replay-overview#seek_to_a_time) in the past to replay
|
1346
|
-
# acknowledged messages.
|
1751
|
+
# Optional. Indicates whether to retain acknowledged messages. If true, then
|
1752
|
+
# messages are not expunged from the subscription's backlog, even if they are
|
1753
|
+
# acknowledged, until they fall out of the `message_retention_duration` window.
|
1754
|
+
# This must be true if you would like to [`Seek` to a timestamp] (https://cloud.
|
1755
|
+
# google.com/pubsub/docs/replay-overview#seek_to_a_time) in the past to replay
|
1756
|
+
# previously-acknowledged messages.
|
1347
1757
|
# Corresponds to the JSON property `retainAckedMessages`
|
1348
1758
|
# @return [Boolean]
|
1349
1759
|
attr_accessor :retain_acked_messages
|
1350
1760
|
alias_method :retain_acked_messages?, :retain_acked_messages
|
1351
1761
|
|
1352
|
-
# A policy that specifies how
|
1353
|
-
#
|
1354
|
-
#
|
1355
|
-
#
|
1356
|
-
#
|
1357
|
-
#
|
1358
|
-
#
|
1762
|
+
# A policy that specifies how Pub/Sub retries message delivery. Retry delay will
|
1763
|
+
# be exponential based on provided minimum and maximum backoffs. https://en.
|
1764
|
+
# wikipedia.org/wiki/Exponential_backoff. RetryPolicy will be triggered on NACKs
|
1765
|
+
# or acknowledgement deadline exceeded events for a given message. Retry Policy
|
1766
|
+
# is implemented on a best effort basis. At times, the delay between consecutive
|
1767
|
+
# deliveries may not match the configuration. That is, delay can be more or less
|
1768
|
+
# than configured backoff.
|
1359
1769
|
# Corresponds to the JSON property `retryPolicy`
|
1360
1770
|
# @return [Google::Apis::PubsubV1::RetryPolicy]
|
1361
1771
|
attr_accessor :retry_policy
|
@@ -1390,7 +1800,9 @@ module Google
|
|
1390
1800
|
# Update properties of this object
|
1391
1801
|
def update!(**args)
|
1392
1802
|
@ack_deadline_seconds = args[:ack_deadline_seconds] if args.key?(:ack_deadline_seconds)
|
1803
|
+
@analytics_hub_subscription_info = args[:analytics_hub_subscription_info] if args.key?(:analytics_hub_subscription_info)
|
1393
1804
|
@bigquery_config = args[:bigquery_config] if args.key?(:bigquery_config)
|
1805
|
+
@cloud_storage_config = args[:cloud_storage_config] if args.key?(:cloud_storage_config)
|
1394
1806
|
@dead_letter_policy = args[:dead_letter_policy] if args.key?(:dead_letter_policy)
|
1395
1807
|
@detached = args[:detached] if args.key?(:detached)
|
1396
1808
|
@enable_exactly_once_delivery = args[:enable_exactly_once_delivery] if args.key?(:enable_exactly_once_delivery)
|
@@ -1449,31 +1861,50 @@ module Google
|
|
1449
1861
|
end
|
1450
1862
|
end
|
1451
1863
|
|
1864
|
+
# Configuration for writing message data in text format. Message payloads will
|
1865
|
+
# be written to files as raw text, separated by a newline.
|
1866
|
+
class TextConfig
|
1867
|
+
include Google::Apis::Core::Hashable
|
1868
|
+
|
1869
|
+
def initialize(**args)
|
1870
|
+
update!(**args)
|
1871
|
+
end
|
1872
|
+
|
1873
|
+
# Update properties of this object
|
1874
|
+
def update!(**args)
|
1875
|
+
end
|
1876
|
+
end
|
1877
|
+
|
1452
1878
|
# A topic resource.
|
1453
1879
|
class Topic
|
1454
1880
|
include Google::Apis::Core::Hashable
|
1455
1881
|
|
1456
|
-
#
|
1457
|
-
#
|
1458
|
-
#
|
1882
|
+
# Settings for an ingestion data source on a topic.
|
1883
|
+
# Corresponds to the JSON property `ingestionDataSourceSettings`
|
1884
|
+
# @return [Google::Apis::PubsubV1::IngestionDataSourceSettings]
|
1885
|
+
attr_accessor :ingestion_data_source_settings
|
1886
|
+
|
1887
|
+
# Optional. The resource name of the Cloud KMS CryptoKey to be used to protect
|
1888
|
+
# access to messages published on this topic. The expected format is `projects/*/
|
1889
|
+
# locations/*/keyRings/*/cryptoKeys/*`.
|
1459
1890
|
# Corresponds to the JSON property `kmsKeyName`
|
1460
1891
|
# @return [String]
|
1461
1892
|
attr_accessor :kms_key_name
|
1462
1893
|
|
1463
|
-
# See [Creating and managing labels] (https://cloud.google.com/pubsub/
|
1464
|
-
# labels).
|
1894
|
+
# Optional. See [Creating and managing labels] (https://cloud.google.com/pubsub/
|
1895
|
+
# docs/labels).
|
1465
1896
|
# Corresponds to the JSON property `labels`
|
1466
1897
|
# @return [Hash<String,String>]
|
1467
1898
|
attr_accessor :labels
|
1468
1899
|
|
1469
|
-
# Indicates the minimum duration to retain a message after it is
|
1470
|
-
# the topic. If this field is set, messages published to the topic
|
1471
|
-
# message_retention_duration` are always available to subscribers.
|
1472
|
-
# it allows any attached subscription to [seek to a timestamp](
|
1473
|
-
# google.com/pubsub/docs/replay-overview#seek_to_a_time) that is
|
1474
|
-
# message_retention_duration` in the past. If this field is not set,
|
1475
|
-
# retention is controlled by settings on individual subscriptions.
|
1476
|
-
# more than 31 days or less than 10 minutes.
|
1900
|
+
# Optional. Indicates the minimum duration to retain a message after it is
|
1901
|
+
# published to the topic. If this field is set, messages published to the topic
|
1902
|
+
# in the last `message_retention_duration` are always available to subscribers.
|
1903
|
+
# For instance, it allows any attached subscription to [seek to a timestamp](
|
1904
|
+
# https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) that is
|
1905
|
+
# up to `message_retention_duration` in the past. If this field is not set,
|
1906
|
+
# message retention is controlled by settings on individual subscriptions.
|
1907
|
+
# Cannot be more than 31 days or less than 10 minutes.
|
1477
1908
|
# Corresponds to the JSON property `messageRetentionDuration`
|
1478
1909
|
# @return [String]
|
1479
1910
|
attr_accessor :message_retention_duration
|
@@ -1492,8 +1923,8 @@ module Google
|
|
1492
1923
|
# @return [String]
|
1493
1924
|
attr_accessor :name
|
1494
1925
|
|
1495
|
-
# Reserved for future use. This field is set only in responses from
|
1496
|
-
# it is ignored if it is set in any requests.
|
1926
|
+
# Optional. Reserved for future use. This field is set only in responses from
|
1927
|
+
# the server; it is ignored if it is set in any requests.
|
1497
1928
|
# Corresponds to the JSON property `satisfiesPzs`
|
1498
1929
|
# @return [Boolean]
|
1499
1930
|
attr_accessor :satisfies_pzs
|
@@ -1504,12 +1935,18 @@ module Google
|
|
1504
1935
|
# @return [Google::Apis::PubsubV1::SchemaSettings]
|
1505
1936
|
attr_accessor :schema_settings
|
1506
1937
|
|
1938
|
+
# Output only. An output-only field indicating the state of the topic.
|
1939
|
+
# Corresponds to the JSON property `state`
|
1940
|
+
# @return [String]
|
1941
|
+
attr_accessor :state
|
1942
|
+
|
1507
1943
|
def initialize(**args)
|
1508
1944
|
update!(**args)
|
1509
1945
|
end
|
1510
1946
|
|
1511
1947
|
# Update properties of this object
|
1512
1948
|
def update!(**args)
|
1949
|
+
@ingestion_data_source_settings = args[:ingestion_data_source_settings] if args.key?(:ingestion_data_source_settings)
|
1513
1950
|
@kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
|
1514
1951
|
@labels = args[:labels] if args.key?(:labels)
|
1515
1952
|
@message_retention_duration = args[:message_retention_duration] if args.key?(:message_retention_duration)
|
@@ -1517,6 +1954,7 @@ module Google
|
|
1517
1954
|
@name = args[:name] if args.key?(:name)
|
1518
1955
|
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
1519
1956
|
@schema_settings = args[:schema_settings] if args.key?(:schema_settings)
|
1957
|
+
@state = args[:state] if args.key?(:state)
|
1520
1958
|
end
|
1521
1959
|
end
|
1522
1960
|
|
@@ -1553,9 +1991,9 @@ module Google
|
|
1553
1991
|
class UpdateSubscriptionRequest
|
1554
1992
|
include Google::Apis::Core::Hashable
|
1555
1993
|
|
1556
|
-
# A subscription resource. If none of `push_config` or `
|
1557
|
-
# then the subscriber will pull and ack messages
|
1558
|
-
# of these fields may be set.
|
1994
|
+
# A subscription resource. If none of `push_config`, `bigquery_config`, or `
|
1995
|
+
# cloud_storage_config` is set, then the subscriber will pull and ack messages
|
1996
|
+
# using API methods. At most one of these fields may be set.
|
1559
1997
|
# Corresponds to the JSON property `subscription`
|
1560
1998
|
# @return [Google::Apis::PubsubV1::Subscription]
|
1561
1999
|
attr_accessor :subscription
|