From 486114a528e748f88e1e15cff82b8f87da02493c Mon Sep 17 00:00:00 2001 From: cloud-java-bot Date: Fri, 27 Feb 2026 03:00:18 +0000 Subject: [PATCH 1/8] chore: Update generation configuration at Fri Feb 27 03:00:12 UTC 2026 --- generation_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generation_config.yaml b/generation_config.yaml index 86168938d..67a06367c 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ gapic_generator_version: 2.67.0 -googleapis_commitish: 9637e50bc0ff6a5e8944980aaf6a2b7f34a90910 +googleapis_commitish: d420134ab324c0cbe0f4ae06ad9697dac77f26ad libraries_bom_version: 26.76.0 libraries: - api_shortname: pubsub From fde968284a4fbf98eef09e8a73e87eb3f781fbf8 Mon Sep 17 00:00:00 2001 From: cloud-java-bot Date: Sat, 28 Feb 2026 02:50:25 +0000 Subject: [PATCH 2/8] chore: Update generation configuration at Sat Feb 28 02:50:18 UTC 2026 --- generation_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generation_config.yaml b/generation_config.yaml index 67a06367c..079a90def 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ gapic_generator_version: 2.67.0 -googleapis_commitish: d420134ab324c0cbe0f4ae06ad9697dac77f26ad +googleapis_commitish: c83d354f79b02e3dc98f22248e22851fcf9b961d libraries_bom_version: 26.76.0 libraries: - api_shortname: pubsub From f0b78164afd34ff60d5332a5efb551ae6637f06e Mon Sep 17 00:00:00 2001 From: cloud-java-bot Date: Tue, 3 Mar 2026 03:03:11 +0000 Subject: [PATCH 3/8] chore: Update generation configuration at Tue Mar 3 03:03:04 UTC 2026 --- generation_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generation_config.yaml b/generation_config.yaml index 079a90def..e433cc04a 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ gapic_generator_version: 2.67.0 -googleapis_commitish: c83d354f79b02e3dc98f22248e22851fcf9b961d +googleapis_commitish: e50da278bd78c6b3b3c10c8856d0de46e00d3fda libraries_bom_version: 26.76.0 libraries: - api_shortname: pubsub From ea344d4c550de3f024280dba6cbb8518a0584739 Mon Sep 17 00:00:00 2001 From: cloud-java-bot Date: Wed, 4 Mar 2026 02:58:22 +0000 Subject: [PATCH 4/8] chore: Update generation configuration at Wed Mar 4 02:58:16 UTC 2026 --- generation_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generation_config.yaml b/generation_config.yaml index e433cc04a..076dbe102 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ gapic_generator_version: 2.67.0 -googleapis_commitish: e50da278bd78c6b3b3c10c8856d0de46e00d3fda +googleapis_commitish: 5c9602dbb5ac6856c07daf83be1fbd001a972ef3 libraries_bom_version: 26.76.0 libraries: - api_shortname: pubsub From f1e997ee3ca2a69de098857f04e42068f135de08 Mon Sep 17 00:00:00 2001 From: cloud-java-bot Date: Thu, 5 Mar 2026 03:00:16 +0000 Subject: [PATCH 5/8] chore: Update generation configuration at Thu Mar 5 03:00:09 UTC 2026 --- generation_config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/generation_config.yaml b/generation_config.yaml index 076dbe102..1dc7c7ed1 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,6 +1,6 @@ gapic_generator_version: 2.67.0 -googleapis_commitish: 5c9602dbb5ac6856c07daf83be1fbd001a972ef3 -libraries_bom_version: 26.76.0 +googleapis_commitish: 23ec7b6ee94a2fe364cdb5a212949f1cf37f85ad +libraries_bom_version: 26.77.0 libraries: - api_shortname: pubsub name_pretty: Cloud Pub/Sub From e74d6d1d41aa8ffbcc761ecadffdb502c99f8103 Mon Sep 17 00:00:00 2001 From: cloud-java-bot Date: Thu, 5 Mar 2026 03:02:47 +0000 Subject: [PATCH 6/8] chore: generate libraries at Thu Mar 5 03:00:45 UTC 2026 --- README.md | 2 +- .../pubsub/v1/SubscriptionAdminClient.java | 2 + .../reflect-config.json | 27 + .../SubscriptionAdminClientHttpJsonTest.java | 10 + .../v1/SubscriptionAdminClientTest.java | 8 + .../com/google/pubsub/v1/BigtableConfig.java | 1650 +++++++++++++++++ .../pubsub/v1/BigtableConfigOrBuilder.java | 176 ++ .../com/google/pubsub/v1/PubsubProto.java | 457 ++--- .../com/google/pubsub/v1/PullRequest.java | 8 +- .../pubsub/v1/PullRequestOrBuilder.java | 2 +- .../com/google/pubsub/v1/Subscription.java | 584 ++++-- .../pubsub/v1/SubscriptionOrBuilder.java | 46 + .../main/proto/google/pubsub/v1/pubsub.proto | 82 + 13 files changed, 2707 insertions(+), 347 deletions(-) create mode 100644 proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/BigtableConfig.java create mode 100644 proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/BigtableConfigOrBuilder.java diff --git a/README.md b/README.md index 3756b7602..f998339b0 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ If you are using Maven without the BOM, add this to your dependencies: If you are using Gradle 5.x or later, add this to your dependencies: ```Groovy -implementation platform('com.google.cloud:libraries-bom:26.76.0') +implementation platform('com.google.cloud:libraries-bom:26.77.0') implementation 'com.google.cloud:google-cloud-pubsub' ``` diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriptionAdminClient.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriptionAdminClient.java index d82b6afa4..26a764dab 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriptionAdminClient.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriptionAdminClient.java @@ -866,6 +866,7 @@ public final Subscription createSubscription( * .setPushConfig(PushConfig.newBuilder().build()) * .setBigqueryConfig(BigQueryConfig.newBuilder().build()) * .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + * .setBigtableConfig(BigtableConfig.newBuilder().build()) * .setAckDeadlineSeconds(2135351438) * .setRetainAckedMessages(true) * .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -1133,6 +1134,7 @@ public final Subscription createSubscription( * .setPushConfig(PushConfig.newBuilder().build()) * .setBigqueryConfig(BigQueryConfig.newBuilder().build()) * .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + * .setBigtableConfig(BigtableConfig.newBuilder().build()) * .setAckDeadlineSeconds(2135351438) * .setRetainAckedMessages(true) * .setMessageRetentionDuration(Duration.newBuilder().build()) diff --git a/google-cloud-pubsub/src/main/resources/META-INF/native-image/com.google.cloud.pubsub.v1/reflect-config.json b/google-cloud-pubsub/src/main/resources/META-INF/native-image/com.google.cloud.pubsub.v1/reflect-config.json index 885e01e89..e3938470a 100644 --- a/google-cloud-pubsub/src/main/resources/META-INF/native-image/com.google.cloud.pubsub.v1/reflect-config.json +++ b/google-cloud-pubsub/src/main/resources/META-INF/native-image/com.google.cloud.pubsub.v1/reflect-config.json @@ -1664,6 +1664,33 @@ "allDeclaredClasses": true, "allPublicClasses": true }, + { + "name": "com.google.pubsub.v1.BigtableConfig", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.pubsub.v1.BigtableConfig$Builder", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, + { + "name": "com.google.pubsub.v1.BigtableConfig$State", + "queryAllDeclaredConstructors": true, + "queryAllPublicConstructors": true, + "queryAllDeclaredMethods": true, + "allPublicMethods": true, + "allDeclaredClasses": true, + "allPublicClasses": true + }, { "name": "com.google.pubsub.v1.CloudStorageConfig", "queryAllDeclaredConstructors": true, diff --git a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/SubscriptionAdminClientHttpJsonTest.java b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/SubscriptionAdminClientHttpJsonTest.java index 128e6e2f6..8ec2cdfab 100644 --- a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/SubscriptionAdminClientHttpJsonTest.java +++ b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/SubscriptionAdminClientHttpJsonTest.java @@ -44,6 +44,7 @@ import com.google.protobuf.FieldMask; import com.google.protobuf.Timestamp; import com.google.pubsub.v1.BigQueryConfig; +import com.google.pubsub.v1.BigtableConfig; import com.google.pubsub.v1.CloudStorageConfig; import com.google.pubsub.v1.DeadLetterPolicy; import com.google.pubsub.v1.ExpirationPolicy; @@ -120,6 +121,7 @@ public void createSubscriptionTest() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -191,6 +193,7 @@ public void createSubscriptionTest2() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -262,6 +265,7 @@ public void createSubscriptionTest3() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -333,6 +337,7 @@ public void createSubscriptionTest4() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -404,6 +409,7 @@ public void getSubscriptionTest() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -468,6 +474,7 @@ public void getSubscriptionTest2() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -532,6 +539,7 @@ public void updateSubscriptionTest() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -558,6 +566,7 @@ public void updateSubscriptionTest() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -610,6 +619,7 @@ public void updateSubscriptionExceptionTest() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) diff --git a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/SubscriptionAdminClientTest.java b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/SubscriptionAdminClientTest.java index 552249455..7df554b6d 100644 --- a/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/SubscriptionAdminClientTest.java +++ b/google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/SubscriptionAdminClientTest.java @@ -47,6 +47,7 @@ import com.google.protobuf.Timestamp; import com.google.pubsub.v1.AcknowledgeRequest; import com.google.pubsub.v1.BigQueryConfig; +import com.google.pubsub.v1.BigtableConfig; import com.google.pubsub.v1.CloudStorageConfig; import com.google.pubsub.v1.CreateSnapshotRequest; import com.google.pubsub.v1.DeadLetterPolicy; @@ -146,6 +147,7 @@ public void createSubscriptionTest() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -214,6 +216,7 @@ public void createSubscriptionTest2() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -282,6 +285,7 @@ public void createSubscriptionTest3() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -350,6 +354,7 @@ public void createSubscriptionTest4() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -418,6 +423,7 @@ public void getSubscriptionTest() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -476,6 +482,7 @@ public void getSubscriptionTest2() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) @@ -534,6 +541,7 @@ public void updateSubscriptionTest() throws Exception { .setPushConfig(PushConfig.newBuilder().build()) .setBigqueryConfig(BigQueryConfig.newBuilder().build()) .setCloudStorageConfig(CloudStorageConfig.newBuilder().build()) + .setBigtableConfig(BigtableConfig.newBuilder().build()) .setAckDeadlineSeconds(2135351438) .setRetainAckedMessages(true) .setMessageRetentionDuration(Duration.newBuilder().build()) diff --git a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/BigtableConfig.java b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/BigtableConfig.java new file mode 100644 index 000000000..38cafb2e0 --- /dev/null +++ b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/BigtableConfig.java @@ -0,0 +1,1650 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/pubsub/v1/pubsub.proto +// Protobuf Java Version: 4.33.2 + +package com.google.pubsub.v1; + +/** + * + * + *
+ * Configuration for a Bigtable subscription. The Pub/Sub message will be
+ * written to a Bigtable row as follows:
+ * - row key: subscription name and message ID delimited by #.
+ * - columns: message bytes written to a single column family "data" with an
+ * empty-string column qualifier.
+ * - cell timestamp: the message publish timestamp.
+ * 
+ * + * Protobuf type {@code google.pubsub.v1.BigtableConfig} + */ +@com.google.protobuf.Generated +public final class BigtableConfig extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.pubsub.v1.BigtableConfig) + BigtableConfigOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "BigtableConfig"); + } + + // Use BigtableConfig.newBuilder() to construct. + private BigtableConfig(com.google.protobuf.GeneratedMessage.Builder builder) { + super(builder); + } + + private BigtableConfig() { + table_ = ""; + appProfileId_ = ""; + serviceAccountEmail_ = ""; + state_ = 0; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.pubsub.v1.PubsubProto + .internal_static_google_pubsub_v1_BigtableConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.pubsub.v1.PubsubProto + .internal_static_google_pubsub_v1_BigtableConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.pubsub.v1.BigtableConfig.class, + com.google.pubsub.v1.BigtableConfig.Builder.class); + } + + /** + * + * + *
+   * Possible states for a Bigtable subscription.
+   * Note: more states could be added in the future. Please code accordingly.
+   * 
+ * + * Protobuf enum {@code google.pubsub.v1.BigtableConfig.State} + */ + public enum State implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+     * Default value. This value is unused.
+     * 
+ * + * STATE_UNSPECIFIED = 0; + */ + STATE_UNSPECIFIED(0), + /** + * + * + *
+     * The subscription can actively send messages to Bigtable.
+     * 
+ * + * ACTIVE = 1; + */ + ACTIVE(1), + /** + * + * + *
+     * Cannot write to Bigtable because the instance, table, or app profile
+     * does not exist.
+     * 
+ * + * NOT_FOUND = 2; + */ + NOT_FOUND(2), + /** + * + * + *
+     * Cannot write to Bigtable because the app profile is not configured for
+     * single-cluster routing.
+     * 
+ * + * APP_PROFILE_MISCONFIGURED = 3; + */ + APP_PROFILE_MISCONFIGURED(3), + /** + * + * + *
+     * Cannot write to Bigtable because of permission denied errors.
+     * This can happen if:
+     * - The Pub/Sub service agent has not been granted the
+     * [appropriate Bigtable IAM permission
+     * bigtable.tables.mutateRows]({$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions)
+     * - The bigtable.googleapis.com API is not enabled for the project
+     * ([instructions]({$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable))
+     * 
+ * + * PERMISSION_DENIED = 4; + */ + PERMISSION_DENIED(4), + /** + * + * + *
+     * Cannot write to Bigtable because of a missing column family ("data") or
+     * if there is no structured row key for the subscription name + message ID.
+     * 
+ * + * SCHEMA_MISMATCH = 5; + */ + SCHEMA_MISMATCH(5), + /** + * + * + *
+     * Cannot write to the destination because enforce_in_transit is set to true
+     * and the destination locations are not in the allowed regions.
+     * 
+ * + * IN_TRANSIT_LOCATION_RESTRICTION = 6; + */ + IN_TRANSIT_LOCATION_RESTRICTION(6), + /** + * + * + *
+     * Cannot write to Bigtable because the table is not in the same location as
+     * where Vertex AI models used in `message_transform`s are deployed.
+     * 
+ * + * VERTEX_AI_LOCATION_RESTRICTION = 7; + */ + VERTEX_AI_LOCATION_RESTRICTION(7), + UNRECOGNIZED(-1), + ; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 2, + /* suffix= */ "", + "State"); + } + + /** + * + * + *
+     * Default value. This value is unused.
+     * 
+ * + * STATE_UNSPECIFIED = 0; + */ + public static final int STATE_UNSPECIFIED_VALUE = 0; + + /** + * + * + *
+     * The subscription can actively send messages to Bigtable.
+     * 
+ * + * ACTIVE = 1; + */ + public static final int ACTIVE_VALUE = 1; + + /** + * + * + *
+     * Cannot write to Bigtable because the instance, table, or app profile
+     * does not exist.
+     * 
+ * + * NOT_FOUND = 2; + */ + public static final int NOT_FOUND_VALUE = 2; + + /** + * + * + *
+     * Cannot write to Bigtable because the app profile is not configured for
+     * single-cluster routing.
+     * 
+ * + * APP_PROFILE_MISCONFIGURED = 3; + */ + public static final int APP_PROFILE_MISCONFIGURED_VALUE = 3; + + /** + * + * + *
+     * Cannot write to Bigtable because of permission denied errors.
+     * This can happen if:
+     * - The Pub/Sub service agent has not been granted the
+     * [appropriate Bigtable IAM permission
+     * bigtable.tables.mutateRows]({$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions)
+     * - The bigtable.googleapis.com API is not enabled for the project
+     * ([instructions]({$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable))
+     * 
+ * + * PERMISSION_DENIED = 4; + */ + public static final int PERMISSION_DENIED_VALUE = 4; + + /** + * + * + *
+     * Cannot write to Bigtable because of a missing column family ("data") or
+     * if there is no structured row key for the subscription name + message ID.
+     * 
+ * + * SCHEMA_MISMATCH = 5; + */ + public static final int SCHEMA_MISMATCH_VALUE = 5; + + /** + * + * + *
+     * Cannot write to the destination because enforce_in_transit is set to true
+     * and the destination locations are not in the allowed regions.
+     * 
+ * + * IN_TRANSIT_LOCATION_RESTRICTION = 6; + */ + public static final int IN_TRANSIT_LOCATION_RESTRICTION_VALUE = 6; + + /** + * + * + *
+     * Cannot write to Bigtable because the table is not in the same location as
+     * where Vertex AI models used in `message_transform`s are deployed.
+     * 
+ * + * VERTEX_AI_LOCATION_RESTRICTION = 7; + */ + public static final int VERTEX_AI_LOCATION_RESTRICTION_VALUE = 7; + + public final int getNumber() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalArgumentException( + "Can't get the number of an unknown enum value."); + } + return value; + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + * @deprecated Use {@link #forNumber(int)} instead. + */ + @java.lang.Deprecated + public static State valueOf(int value) { + return forNumber(value); + } + + /** + * @param value The numeric wire value of the corresponding enum entry. + * @return The enum associated with the given numeric wire value. + */ + public static State forNumber(int value) { + switch (value) { + case 0: + return STATE_UNSPECIFIED; + case 1: + return ACTIVE; + case 2: + return NOT_FOUND; + case 3: + return APP_PROFILE_MISCONFIGURED; + case 4: + return PERMISSION_DENIED; + case 5: + return SCHEMA_MISMATCH; + case 6: + return IN_TRANSIT_LOCATION_RESTRICTION; + case 7: + return VERTEX_AI_LOCATION_RESTRICTION; + default: + return null; + } + } + + public static com.google.protobuf.Internal.EnumLiteMap internalGetValueMap() { + return internalValueMap; + } + + private static final com.google.protobuf.Internal.EnumLiteMap internalValueMap = + new com.google.protobuf.Internal.EnumLiteMap() { + public State findValueByNumber(int number) { + return State.forNumber(number); + } + }; + + public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor() { + if (this == UNRECOGNIZED) { + throw new java.lang.IllegalStateException( + "Can't get the descriptor of an unrecognized enum value."); + } + return getDescriptor().getValues().get(ordinal()); + } + + public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType() { + return getDescriptor(); + } + + public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() { + return com.google.pubsub.v1.BigtableConfig.getDescriptor().getEnumTypes().get(0); + } + + private static final State[] VALUES = values(); + + public static State valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) { + if (desc.getType() != getDescriptor()) { + throw new java.lang.IllegalArgumentException("EnumValueDescriptor is not for this type."); + } + if (desc.getIndex() == -1) { + return UNRECOGNIZED; + } + return VALUES[desc.getIndex()]; + } + + private final int value; + + private State(int value) { + this.value = value; + } + + // @@protoc_insertion_point(enum_scope:google.pubsub.v1.BigtableConfig.State) + } + + public static final int TABLE_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object table_ = ""; + + /** + * + * + *
+   * Optional. The unique name of the table to write messages to.
+   *
+   * Values are of the form
+   * `projects/<project>/instances/<instance>/tables/<table>`.
+   * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The table. + */ + @java.lang.Override + public java.lang.String getTable() { + java.lang.Object ref = table_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + table_ = s; + return s; + } + } + + /** + * + * + *
+   * Optional. The unique name of the table to write messages to.
+   *
+   * Values are of the form
+   * `projects/<project>/instances/<instance>/tables/<table>`.
+   * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for table. + */ + @java.lang.Override + public com.google.protobuf.ByteString getTableBytes() { + java.lang.Object ref = table_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + table_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int APP_PROFILE_ID_FIELD_NUMBER = 2; + + @SuppressWarnings("serial") + private volatile java.lang.Object appProfileId_ = ""; + + /** + * + * + *
+   * Optional. The app profile to use for the Bigtable writes. If not specified,
+   * the "default" application profile will be used. The app profile must use
+   * single-cluster routing.
+   * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The appProfileId. + */ + @java.lang.Override + public java.lang.String getAppProfileId() { + java.lang.Object ref = appProfileId_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + appProfileId_ = s; + return s; + } + } + + /** + * + * + *
+   * Optional. The app profile to use for the Bigtable writes. If not specified,
+   * the "default" application profile will be used. The app profile must use
+   * single-cluster routing.
+   * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for appProfileId. + */ + @java.lang.Override + public com.google.protobuf.ByteString getAppProfileIdBytes() { + java.lang.Object ref = appProfileId_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + appProfileId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SERVICE_ACCOUNT_EMAIL_FIELD_NUMBER = 3; + + @SuppressWarnings("serial") + private volatile java.lang.Object serviceAccountEmail_ = ""; + + /** + * + * + *
+   * Optional. The service account to use to write to Bigtable. The subscription
+   * creator or updater that specifies this field must have
+   * `iam.serviceAccounts.actAs` permission on the service account. If not
+   * specified, the Pub/Sub [service
+   * agent](https://cloud.google.com/iam/docs/service-agents),
+   * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+   * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The serviceAccountEmail. + */ + @java.lang.Override + public java.lang.String getServiceAccountEmail() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + serviceAccountEmail_ = s; + return s; + } + } + + /** + * + * + *
+   * Optional. The service account to use to write to Bigtable. The subscription
+   * creator or updater that specifies this field must have
+   * `iam.serviceAccounts.actAs` permission on the service account. If not
+   * specified, the Pub/Sub [service
+   * agent](https://cloud.google.com/iam/docs/service-agents),
+   * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+   * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for serviceAccountEmail. + */ + @java.lang.Override + public com.google.protobuf.ByteString getServiceAccountEmailBytes() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccountEmail_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int WRITE_METADATA_FIELD_NUMBER = 5; + private boolean writeMetadata_ = false; + + /** + * + * + *
+   * Optional. When true, write the subscription name, message_id, publish_time,
+   * attributes, and ordering_key to additional columns in the table under the
+   * pubsub_metadata column family. The subscription name, message_id, and
+   * publish_time fields are put in their own columns while all other message
+   * properties (other than data) are written to a JSON object in the attributes
+   * column.
+   * 
+ * + * bool write_metadata = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The writeMetadata. + */ + @java.lang.Override + public boolean getWriteMetadata() { + return writeMetadata_; + } + + public static final int STATE_FIELD_NUMBER = 4; + private int state_ = 0; + + /** + * + * + *
+   * Output only. An output-only field that indicates whether or not the
+   * subscription can receive messages.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for state. + */ + @java.lang.Override + public int getStateValue() { + return state_; + } + + /** + * + * + *
+   * Output only. An output-only field that indicates whether or not the
+   * subscription can receive messages.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The state. + */ + @java.lang.Override + public com.google.pubsub.v1.BigtableConfig.State getState() { + com.google.pubsub.v1.BigtableConfig.State result = + com.google.pubsub.v1.BigtableConfig.State.forNumber(state_); + return result == null ? com.google.pubsub.v1.BigtableConfig.State.UNRECOGNIZED : result; + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(table_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 1, table_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(appProfileId_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 2, appProfileId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccountEmail_)) { + com.google.protobuf.GeneratedMessage.writeString(output, 3, serviceAccountEmail_); + } + if (state_ != com.google.pubsub.v1.BigtableConfig.State.STATE_UNSPECIFIED.getNumber()) { + output.writeEnum(4, state_); + } + if (writeMetadata_ != false) { + output.writeBool(5, writeMetadata_); + } + getUnknownFields().writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(table_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(1, table_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(appProfileId_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(2, appProfileId_); + } + if (!com.google.protobuf.GeneratedMessage.isStringEmpty(serviceAccountEmail_)) { + size += com.google.protobuf.GeneratedMessage.computeStringSize(3, serviceAccountEmail_); + } + if (state_ != com.google.pubsub.v1.BigtableConfig.State.STATE_UNSPECIFIED.getNumber()) { + size += com.google.protobuf.CodedOutputStream.computeEnumSize(4, state_); + } + if (writeMetadata_ != false) { + size += com.google.protobuf.CodedOutputStream.computeBoolSize(5, writeMetadata_); + } + size += getUnknownFields().getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.pubsub.v1.BigtableConfig)) { + return super.equals(obj); + } + com.google.pubsub.v1.BigtableConfig other = (com.google.pubsub.v1.BigtableConfig) obj; + + if (!getTable().equals(other.getTable())) return false; + if (!getAppProfileId().equals(other.getAppProfileId())) return false; + if (!getServiceAccountEmail().equals(other.getServiceAccountEmail())) return false; + if (getWriteMetadata() != other.getWriteMetadata()) return false; + if (state_ != other.state_) return false; + if (!getUnknownFields().equals(other.getUnknownFields())) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + TABLE_FIELD_NUMBER; + hash = (53 * hash) + getTable().hashCode(); + hash = (37 * hash) + APP_PROFILE_ID_FIELD_NUMBER; + hash = (53 * hash) + getAppProfileId().hashCode(); + hash = (37 * hash) + SERVICE_ACCOUNT_EMAIL_FIELD_NUMBER; + hash = (53 * hash) + getServiceAccountEmail().hashCode(); + hash = (37 * hash) + WRITE_METADATA_FIELD_NUMBER; + hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getWriteMetadata()); + hash = (37 * hash) + STATE_FIELD_NUMBER; + hash = (53 * hash) + state_; + hash = (29 * hash) + getUnknownFields().hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom(com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.pubsub.v1.BigtableConfig parseDelimitedFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.pubsub.v1.BigtableConfig parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input); + } + + public static com.google.pubsub.v1.BigtableConfig parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessage.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.pubsub.v1.BigtableConfig prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + + /** + * + * + *
+   * Configuration for a Bigtable subscription. The Pub/Sub message will be
+   * written to a Bigtable row as follows:
+   * - row key: subscription name and message ID delimited by #.
+   * - columns: message bytes written to a single column family "data" with an
+   * empty-string column qualifier.
+   * - cell timestamp: the message publish timestamp.
+   * 
+ * + * Protobuf type {@code google.pubsub.v1.BigtableConfig} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder + implements + // @@protoc_insertion_point(builder_implements:google.pubsub.v1.BigtableConfig) + com.google.pubsub.v1.BigtableConfigOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.pubsub.v1.PubsubProto + .internal_static_google_pubsub_v1_BigtableConfig_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.pubsub.v1.PubsubProto + .internal_static_google_pubsub_v1_BigtableConfig_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.pubsub.v1.BigtableConfig.class, + com.google.pubsub.v1.BigtableConfig.Builder.class); + } + + // Construct using com.google.pubsub.v1.BigtableConfig.newBuilder() + private Builder() {} + + private Builder(com.google.protobuf.GeneratedMessage.BuilderParent parent) { + super(parent); + } + + @java.lang.Override + public Builder clear() { + super.clear(); + bitField0_ = 0; + table_ = ""; + appProfileId_ = ""; + serviceAccountEmail_ = ""; + writeMetadata_ = false; + state_ = 0; + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.pubsub.v1.PubsubProto + .internal_static_google_pubsub_v1_BigtableConfig_descriptor; + } + + @java.lang.Override + public com.google.pubsub.v1.BigtableConfig getDefaultInstanceForType() { + return com.google.pubsub.v1.BigtableConfig.getDefaultInstance(); + } + + @java.lang.Override + public com.google.pubsub.v1.BigtableConfig build() { + com.google.pubsub.v1.BigtableConfig result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.pubsub.v1.BigtableConfig buildPartial() { + com.google.pubsub.v1.BigtableConfig result = new com.google.pubsub.v1.BigtableConfig(this); + if (bitField0_ != 0) { + buildPartial0(result); + } + onBuilt(); + return result; + } + + private void buildPartial0(com.google.pubsub.v1.BigtableConfig result) { + int from_bitField0_ = bitField0_; + if (((from_bitField0_ & 0x00000001) != 0)) { + result.table_ = table_; + } + if (((from_bitField0_ & 0x00000002) != 0)) { + result.appProfileId_ = appProfileId_; + } + if (((from_bitField0_ & 0x00000004) != 0)) { + result.serviceAccountEmail_ = serviceAccountEmail_; + } + if (((from_bitField0_ & 0x00000008) != 0)) { + result.writeMetadata_ = writeMetadata_; + } + if (((from_bitField0_ & 0x00000010) != 0)) { + result.state_ = state_; + } + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.pubsub.v1.BigtableConfig) { + return mergeFrom((com.google.pubsub.v1.BigtableConfig) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.pubsub.v1.BigtableConfig other) { + if (other == com.google.pubsub.v1.BigtableConfig.getDefaultInstance()) return this; + if (!other.getTable().isEmpty()) { + table_ = other.table_; + bitField0_ |= 0x00000001; + onChanged(); + } + if (!other.getAppProfileId().isEmpty()) { + appProfileId_ = other.appProfileId_; + bitField0_ |= 0x00000002; + onChanged(); + } + if (!other.getServiceAccountEmail().isEmpty()) { + serviceAccountEmail_ = other.serviceAccountEmail_; + bitField0_ |= 0x00000004; + onChanged(); + } + if (other.getWriteMetadata() != false) { + setWriteMetadata(other.getWriteMetadata()); + } + if (other.state_ != 0) { + setStateValue(other.getStateValue()); + } + this.mergeUnknownFields(other.getUnknownFields()); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + table_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000001; + break; + } // case 10 + case 18: + { + appProfileId_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000002; + break; + } // case 18 + case 26: + { + serviceAccountEmail_ = input.readStringRequireUtf8(); + bitField0_ |= 0x00000004; + break; + } // case 26 + case 32: + { + state_ = input.readEnum(); + bitField0_ |= 0x00000010; + break; + } // case 32 + case 40: + { + writeMetadata_ = input.readBool(); + bitField0_ |= 0x00000008; + break; + } // case 40 + default: + { + if (!super.parseUnknownField(input, extensionRegistry, tag)) { + done = true; // was an endgroup tag + } + break; + } // default: + } // switch (tag) + } // while (!done) + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.unwrapIOException(); + } finally { + onChanged(); + } // finally + return this; + } + + private int bitField0_; + + private java.lang.Object table_ = ""; + + /** + * + * + *
+     * Optional. The unique name of the table to write messages to.
+     *
+     * Values are of the form
+     * `projects/<project>/instances/<instance>/tables/<table>`.
+     * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The table. + */ + public java.lang.String getTable() { + java.lang.Object ref = table_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + table_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Optional. The unique name of the table to write messages to.
+     *
+     * Values are of the form
+     * `projects/<project>/instances/<instance>/tables/<table>`.
+     * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for table. + */ + public com.google.protobuf.ByteString getTableBytes() { + java.lang.Object ref = table_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + table_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Optional. The unique name of the table to write messages to.
+     *
+     * Values are of the form
+     * `projects/<project>/instances/<instance>/tables/<table>`.
+     * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The table to set. + * @return This builder for chaining. + */ + public Builder setTable(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + table_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The unique name of the table to write messages to.
+     *
+     * Values are of the form
+     * `projects/<project>/instances/<instance>/tables/<table>`.
+     * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearTable() { + table_ = getDefaultInstance().getTable(); + bitField0_ = (bitField0_ & ~0x00000001); + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The unique name of the table to write messages to.
+     *
+     * Values are of the form
+     * `projects/<project>/instances/<instance>/tables/<table>`.
+     * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for table to set. + * @return This builder for chaining. + */ + public Builder setTableBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + table_ = value; + bitField0_ |= 0x00000001; + onChanged(); + return this; + } + + private java.lang.Object appProfileId_ = ""; + + /** + * + * + *
+     * Optional. The app profile to use for the Bigtable writes. If not specified,
+     * the "default" application profile will be used. The app profile must use
+     * single-cluster routing.
+     * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The appProfileId. + */ + public java.lang.String getAppProfileId() { + java.lang.Object ref = appProfileId_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + appProfileId_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Optional. The app profile to use for the Bigtable writes. If not specified,
+     * the "default" application profile will be used. The app profile must use
+     * single-cluster routing.
+     * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for appProfileId. + */ + public com.google.protobuf.ByteString getAppProfileIdBytes() { + java.lang.Object ref = appProfileId_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + appProfileId_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Optional. The app profile to use for the Bigtable writes. If not specified,
+     * the "default" application profile will be used. The app profile must use
+     * single-cluster routing.
+     * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The appProfileId to set. + * @return This builder for chaining. + */ + public Builder setAppProfileId(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + appProfileId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The app profile to use for the Bigtable writes. If not specified,
+     * the "default" application profile will be used. The app profile must use
+     * single-cluster routing.
+     * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearAppProfileId() { + appProfileId_ = getDefaultInstance().getAppProfileId(); + bitField0_ = (bitField0_ & ~0x00000002); + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The app profile to use for the Bigtable writes. If not specified,
+     * the "default" application profile will be used. The app profile must use
+     * single-cluster routing.
+     * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for appProfileId to set. + * @return This builder for chaining. + */ + public Builder setAppProfileIdBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + appProfileId_ = value; + bitField0_ |= 0x00000002; + onChanged(); + return this; + } + + private java.lang.Object serviceAccountEmail_ = ""; + + /** + * + * + *
+     * Optional. The service account to use to write to Bigtable. The subscription
+     * creator or updater that specifies this field must have
+     * `iam.serviceAccounts.actAs` permission on the service account. If not
+     * specified, the Pub/Sub [service
+     * agent](https://cloud.google.com/iam/docs/service-agents),
+     * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+     * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The serviceAccountEmail. + */ + public java.lang.String getServiceAccountEmail() { + java.lang.Object ref = serviceAccountEmail_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + serviceAccountEmail_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + + /** + * + * + *
+     * Optional. The service account to use to write to Bigtable. The subscription
+     * creator or updater that specifies this field must have
+     * `iam.serviceAccounts.actAs` permission on the service account. If not
+     * specified, the Pub/Sub [service
+     * agent](https://cloud.google.com/iam/docs/service-agents),
+     * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+     * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for serviceAccountEmail. + */ + public com.google.protobuf.ByteString getServiceAccountEmailBytes() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccountEmail_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + /** + * + * + *
+     * Optional. The service account to use to write to Bigtable. The subscription
+     * creator or updater that specifies this field must have
+     * `iam.serviceAccounts.actAs` permission on the service account. If not
+     * specified, the Pub/Sub [service
+     * agent](https://cloud.google.com/iam/docs/service-agents),
+     * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+     * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The serviceAccountEmail to set. + * @return This builder for chaining. + */ + public Builder setServiceAccountEmail(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + serviceAccountEmail_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The service account to use to write to Bigtable. The subscription
+     * creator or updater that specifies this field must have
+     * `iam.serviceAccounts.actAs` permission on the service account. If not
+     * specified, the Pub/Sub [service
+     * agent](https://cloud.google.com/iam/docs/service-agents),
+     * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+     * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearServiceAccountEmail() { + serviceAccountEmail_ = getDefaultInstance().getServiceAccountEmail(); + bitField0_ = (bitField0_ & ~0x00000004); + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. The service account to use to write to Bigtable. The subscription
+     * creator or updater that specifies this field must have
+     * `iam.serviceAccounts.actAs` permission on the service account. If not
+     * specified, the Pub/Sub [service
+     * agent](https://cloud.google.com/iam/docs/service-agents),
+     * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+     * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The bytes for serviceAccountEmail to set. + * @return This builder for chaining. + */ + public Builder setServiceAccountEmailBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + serviceAccountEmail_ = value; + bitField0_ |= 0x00000004; + onChanged(); + return this; + } + + private boolean writeMetadata_; + + /** + * + * + *
+     * Optional. When true, write the subscription name, message_id, publish_time,
+     * attributes, and ordering_key to additional columns in the table under the
+     * pubsub_metadata column family. The subscription name, message_id, and
+     * publish_time fields are put in their own columns while all other message
+     * properties (other than data) are written to a JSON object in the attributes
+     * column.
+     * 
+ * + * bool write_metadata = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The writeMetadata. + */ + @java.lang.Override + public boolean getWriteMetadata() { + return writeMetadata_; + } + + /** + * + * + *
+     * Optional. When true, write the subscription name, message_id, publish_time,
+     * attributes, and ordering_key to additional columns in the table under the
+     * pubsub_metadata column family. The subscription name, message_id, and
+     * publish_time fields are put in their own columns while all other message
+     * properties (other than data) are written to a JSON object in the attributes
+     * column.
+     * 
+ * + * bool write_metadata = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @param value The writeMetadata to set. + * @return This builder for chaining. + */ + public Builder setWriteMetadata(boolean value) { + + writeMetadata_ = value; + bitField0_ |= 0x00000008; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. When true, write the subscription name, message_id, publish_time,
+     * attributes, and ordering_key to additional columns in the table under the
+     * pubsub_metadata column family. The subscription name, message_id, and
+     * publish_time fields are put in their own columns while all other message
+     * properties (other than data) are written to a JSON object in the attributes
+     * column.
+     * 
+ * + * bool write_metadata = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return This builder for chaining. + */ + public Builder clearWriteMetadata() { + bitField0_ = (bitField0_ & ~0x00000008); + writeMetadata_ = false; + onChanged(); + return this; + } + + private int state_ = 0; + + /** + * + * + *
+     * Output only. An output-only field that indicates whether or not the
+     * subscription can receive messages.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for state. + */ + @java.lang.Override + public int getStateValue() { + return state_; + } + + /** + * + * + *
+     * Output only. An output-only field that indicates whether or not the
+     * subscription can receive messages.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The enum numeric value on the wire for state to set. + * @return This builder for chaining. + */ + public Builder setStateValue(int value) { + state_ = value; + bitField0_ |= 0x00000010; + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. An output-only field that indicates whether or not the
+     * subscription can receive messages.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The state. + */ + @java.lang.Override + public com.google.pubsub.v1.BigtableConfig.State getState() { + com.google.pubsub.v1.BigtableConfig.State result = + com.google.pubsub.v1.BigtableConfig.State.forNumber(state_); + return result == null ? com.google.pubsub.v1.BigtableConfig.State.UNRECOGNIZED : result; + } + + /** + * + * + *
+     * Output only. An output-only field that indicates whether or not the
+     * subscription can receive messages.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @param value The state to set. + * @return This builder for chaining. + */ + public Builder setState(com.google.pubsub.v1.BigtableConfig.State value) { + if (value == null) { + throw new NullPointerException(); + } + bitField0_ |= 0x00000010; + state_ = value.getNumber(); + onChanged(); + return this; + } + + /** + * + * + *
+     * Output only. An output-only field that indicates whether or not the
+     * subscription can receive messages.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return This builder for chaining. + */ + public Builder clearState() { + bitField0_ = (bitField0_ & ~0x00000010); + state_ = 0; + onChanged(); + return this; + } + + // @@protoc_insertion_point(builder_scope:google.pubsub.v1.BigtableConfig) + } + + // @@protoc_insertion_point(class_scope:google.pubsub.v1.BigtableConfig) + private static final com.google.pubsub.v1.BigtableConfig DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.pubsub.v1.BigtableConfig(); + } + + public static com.google.pubsub.v1.BigtableConfig getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public BigtableConfig parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + Builder builder = newBuilder(); + try { + builder.mergeFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(builder.buildPartial()); + } catch (com.google.protobuf.UninitializedMessageException e) { + throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e) + .setUnfinishedMessage(builder.buildPartial()); + } + return builder.buildPartial(); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.pubsub.v1.BigtableConfig getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/BigtableConfigOrBuilder.java b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/BigtableConfigOrBuilder.java new file mode 100644 index 000000000..ef22565e2 --- /dev/null +++ b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/BigtableConfigOrBuilder.java @@ -0,0 +1,176 @@ +/* + * Copyright 2026 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// NO CHECKED-IN PROTOBUF GENCODE +// source: google/pubsub/v1/pubsub.proto +// Protobuf Java Version: 4.33.2 + +package com.google.pubsub.v1; + +@com.google.protobuf.Generated +public interface BigtableConfigOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.pubsub.v1.BigtableConfig) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * Optional. The unique name of the table to write messages to.
+   *
+   * Values are of the form
+   * `projects/<project>/instances/<instance>/tables/<table>`.
+   * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The table. + */ + java.lang.String getTable(); + + /** + * + * + *
+   * Optional. The unique name of the table to write messages to.
+   *
+   * Values are of the form
+   * `projects/<project>/instances/<instance>/tables/<table>`.
+   * 
+ * + * string table = 1 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for table. + */ + com.google.protobuf.ByteString getTableBytes(); + + /** + * + * + *
+   * Optional. The app profile to use for the Bigtable writes. If not specified,
+   * the "default" application profile will be used. The app profile must use
+   * single-cluster routing.
+   * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The appProfileId. + */ + java.lang.String getAppProfileId(); + + /** + * + * + *
+   * Optional. The app profile to use for the Bigtable writes. If not specified,
+   * the "default" application profile will be used. The app profile must use
+   * single-cluster routing.
+   * 
+ * + * string app_profile_id = 2 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for appProfileId. + */ + com.google.protobuf.ByteString getAppProfileIdBytes(); + + /** + * + * + *
+   * Optional. The service account to use to write to Bigtable. The subscription
+   * creator or updater that specifies this field must have
+   * `iam.serviceAccounts.actAs` permission on the service account. If not
+   * specified, the Pub/Sub [service
+   * agent](https://cloud.google.com/iam/docs/service-agents),
+   * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+   * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The serviceAccountEmail. + */ + java.lang.String getServiceAccountEmail(); + + /** + * + * + *
+   * Optional. The service account to use to write to Bigtable. The subscription
+   * creator or updater that specifies this field must have
+   * `iam.serviceAccounts.actAs` permission on the service account. If not
+   * specified, the Pub/Sub [service
+   * agent](https://cloud.google.com/iam/docs/service-agents),
+   * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used.
+   * 
+ * + * string service_account_email = 3 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The bytes for serviceAccountEmail. + */ + com.google.protobuf.ByteString getServiceAccountEmailBytes(); + + /** + * + * + *
+   * Optional. When true, write the subscription name, message_id, publish_time,
+   * attributes, and ordering_key to additional columns in the table under the
+   * pubsub_metadata column family. The subscription name, message_id, and
+   * publish_time fields are put in their own columns while all other message
+   * properties (other than data) are written to a JSON object in the attributes
+   * column.
+   * 
+ * + * bool write_metadata = 5 [(.google.api.field_behavior) = OPTIONAL]; + * + * @return The writeMetadata. + */ + boolean getWriteMetadata(); + + /** + * + * + *
+   * Output only. An output-only field that indicates whether or not the
+   * subscription can receive messages.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The enum numeric value on the wire for state. + */ + int getStateValue(); + + /** + * + * + *
+   * Output only. An output-only field that indicates whether or not the
+   * subscription can receive messages.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig.State state = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * + * + * @return The state. + */ + com.google.pubsub.v1.BigtableConfig.State getState(); +} diff --git a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PubsubProto.java b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PubsubProto.java index 4717d7ebf..10ab7cdd2 100644 --- a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PubsubProto.java +++ b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PubsubProto.java @@ -268,6 +268,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_pubsub_v1_BigQueryConfig_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable internal_static_google_pubsub_v1_BigQueryConfig_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_pubsub_v1_BigtableConfig_descriptor; + static final com.google.protobuf.GeneratedMessage.FieldAccessorTable + internal_static_google_pubsub_v1_BigtableConfig_fieldAccessorTable; static final com.google.protobuf.Descriptors.Descriptor internal_static_google_pubsub_v1_CloudStorageConfig_descriptor; static final com.google.protobuf.GeneratedMessage.FieldAccessorTable @@ -718,7 +722,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\031DetachSubscriptionRequest\022@\n" + "\014subscription\030\001 \001(\tB*\340A\002\372A$\n" + "\"pubsub.googleapis.com/Subscription\"\034\n" - + "\032DetachSubscriptionResponse\"\250\014\n" + + "\032DetachSubscriptionResponse\"\350\014\n" + "\014Subscription\022\024\n" + "\004name\030\001 \001(\tB\006\340A\002\340A\010\0222\n" + "\005topic\030\002 \001(\tB#\340A\002\372A\035\n" @@ -728,13 +732,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\017bigquery_config\030\022 \001(\0132" + " .google.pubsub.v1.BigQueryConfigB\003\340A\001\022G\n" + "\024cloud_storage_config\030\026" - + " \001(\0132$.google.pubsub.v1.CloudStorageConfigB\003\340A\001\022!\n" + + " \001(\0132$.google.pubsub.v1.CloudStorageConfigB\003\340A\001\022>\n" + + "\017bigtable_config\030\033 \001(\0132" + + " .google.pubsub.v1.BigtableConfigB\003\340A\001\022!\n" + "\024ack_deadline_seconds\030\005 \001(\005B\003\340A\001\022\"\n" + "\025retain_acked_messages\030\007 \001(\010B\003\340A\001\022B\n" + "\032message_retention_duration\030\010" + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\022?\n" - + "\006labels\030\t" - + " \003(\0132*.google.pubsub.v1.Subscription.LabelsEntryB\003\340A\001\022$\n" + + "\006labels\030\t \003(\0132*.g" + + "oogle.pubsub.v1.Subscription.LabelsEntryB\003\340A\001\022$\n" + "\027enable_message_ordering\030\n" + " \001(\010B\003\340A\001\022B\n" + "\021expiration_policy\030\013" @@ -749,8 +755,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + " topic_message_retention_duration\030\021" + " \001(\0132\031.google.protobuf.DurationB\003\340A\003\0228\n" + "\005state\030\023 \001(\0162$.google.pubsub.v1.Subscription.StateB\003\340A\003\022i\n" - + "\037analytics_hub_subscription_info\030\027 \001(\0132;.goo" - + "gle.pubsub.v1.Subscription.AnalyticsHubSubscriptionInfoB\003\340A\003\022C\n" + + "\037analytics_hub_subscription_info\030\027 \001(\0132;.google.pubsub.v1.Su" + + "bscription.AnalyticsHubSubscriptionInfoB\003\340A\003\022C\n" + "\022message_transforms\030\031" + " \003(\0132\".google.pubsub.v1.MessageTransformB\003\340A\001\022A\n" + "\004tags\030\032 \003(\0132(.google.pubsub.v1.Subscription.TagsEntryB" @@ -769,8 +775,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\021STATE_UNSPECIFIED\020\000\022\n\n" + "\006ACTIVE\020\001\022\022\n" + "\016RESOURCE_ERROR\020\002:u\352Ar\n" - + "\"pubsub.googleapis.com/Subscription\022/proj" - + "ects/{project}/subscriptions/{subscription}*\r" + + "\"pubsub.googleapi" + + "s.com/Subscription\022/projects/{project}/subscriptions/{subscription}*\r" + "subscriptions2\014subscription\"\177\n" + "\013RetryPolicy\0227\n" + "\017minimum_backoff\030\001" @@ -784,12 +790,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\003ttl\030\001 \001(\0132\031.google.protobuf.DurationB\003\340A\001\"\232\004\n\n" + "PushConfig\022\032\n\r" + "push_endpoint\030\001 \001(\tB\003\340A\001\022E\n\n" - + "attributes\030\002" - + " \003(\0132,.google.pubsub.v1.PushConfig.AttributesEntryB\003\340A\001\022A\n\n" - + "oidc_token\030\003 \001(\013" - + "2&.google.pubsub.v1.PushConfig.OidcTokenB\003\340A\001H\000\022I\n" - + "\016pubsub_wrapper\030\004 \001(\0132*.google" - + ".pubsub.v1.PushConfig.PubsubWrapperB\003\340A\001H\001\022A\n\n" + + "attributes\030\002 \003(\0132,.goog" + + "le.pubsub.v1.PushConfig.AttributesEntryB\003\340A\001\022A\n\n" + + "oidc_token\030\003" + + " \001(\0132&.google.pubsub.v1.PushConfig.OidcTokenB\003\340A\001H\000\022I\n" + + "\016pubsub_wrapper\030\004" + + " \001(\0132*.google.pubsub.v1.PushConfig.PubsubWrapperB\003\340A\001H\001\022A\n\n" + "no_wrapper\030\005" + " \001(\0132&.google.pubsub.v1.PushConfig.NoWrapperB\003\340A\001H\001\032F\n" + "\tOidcToken\022\"\n" @@ -808,8 +814,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\020use_topic_schema\030\002 \001(\010B\003\340A\001\022\033\n" + "\016write_metadata\030\003 \001(\010B\003\340A\001\022 \n" + "\023drop_unknown_fields\030\004 \001(\010B\003\340A\001\022:\n" - + "\005state\030\005 \001(\0162&.go" - + "ogle.pubsub.v1.BigQueryConfig.StateB\003\340A\003\022\035\n" + + "\005state\030\005" + + " \001(\0162&.google.pubsub.v1.BigQueryConfig.StateB\003\340A\003\022\035\n" + "\020use_table_schema\030\006 \001(\010B\003\340A\001\022\"\n" + "\025service_account_email\030\007 \001(\tB\003\340A\001\"\256\001\n" + "\005State\022\025\n" @@ -819,17 +825,33 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\tNOT_FOUND\020\003\022\023\n" + "\017SCHEMA_MISMATCH\020\004\022#\n" + "\037IN_TRANSIT_LOCATION_RESTRICTION\020\005\022\"\n" - + "\036VERTEX_AI_LOCATION_RESTRICTION\020\006\"\215\006\n" + + "\036VERTEX_AI_LOCATION_RESTRICTION\020\006\"\216\003\n" + + "\016BigtableConfig\022\022\n" + + "\005table\030\001 \001(\tB\003\340A\001\022\033\n" + + "\016app_profile_id\030\002 \001(\tB\003\340A\001\022\"\n" + + "\025service_account_email\030\003 \001(\tB\003\340A\001\022\033\n" + + "\016write_metadata\030\005 \001(\010B\003\340A\001\022:\n" + + "\005state\030\004" + + " \001(\0162&.google.pubsub.v1.BigtableConfig.StateB\003\340A\003\"\315\001\n" + + "\005State\022\025\n" + + "\021STATE_UNSPECIFIED\020\000\022\n\n" + + "\006ACTIVE\020\001\022\r\n" + + "\tNOT_FOUND\020\002\022\035\n" + + "\031APP_PROFILE_MISCONFIGURED\020\003\022\025\n" + + "\021PERMISSION_DENIED\020\004\022\023\n" + + "\017SCHEMA_MISMATCH\020\005\022#\n" + + "\037IN_TRANSIT_LOCATION_RESTRICTION\020\006\022\"\n" + + "\036VERTEX_AI_LOCATION_RESTRICTION\020\007\"\215\006\n" + "\022CloudStorageConfig\022\023\n" + "\006bucket\030\001 \001(\tB\003\340A\002\022\034\n" + "\017filename_prefix\030\002 \001(\tB\003\340A\001\022\034\n" + "\017filename_suffix\030\003 \001(\tB\003\340A\001\022%\n" + "\030filename_datetime_format\030\n" + " \001(\tB\003\340A\001\022K\n" - + "\013text_config\030\004" - + " \001(\0132/.google.pubsub.v1.CloudStorageConfig.TextConfigB\003\340A\001H\000\022K\n" - + "\013avro_config\030\005" - + " \001(\0132/.google.pubsub.v1.CloudStorageConfig.AvroConfigB\003\340A\001H\000\0224\n" + + "\013text_config\030\004 \001(\0132/.goog" + + "le.pubsub.v1.CloudStorageConfig.TextConfigB\003\340A\001H\000\022K\n" + + "\013avro_config\030\005 \001(\0132/.google." + + "pubsub.v1.CloudStorageConfig.AvroConfigB\003\340A\001H\000\0224\n" + "\014max_duration\030\006" + " \001(\0132\031.google.protobuf.DurationB\003\340A\001\022\026\n" + "\tmax_bytes\030\007 \001(\003B\003\340A\001\022\031\n" @@ -859,8 +881,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\014subscription\030\001 \001(\tB*\340A\002\372A$\n" + "\"pubsub.googleapis.com/Subscription\"\214\001\n" + "\031UpdateSubscriptionRequest\0229\n" - + "\014subscription\030\001" - + " \001(\0132\036.google.pubsub.v1.SubscriptionB\003\340A\002\0224\n" + + "\014subscription\030\001 " + + "\001(\0132\036.google.pubsub.v1.SubscriptionB\003\340A\002\0224\n" + "\013update_mask\030\002" + " \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\"\221\001\n" + "\030ListSubscriptionsRequest\022D\n" @@ -912,168 +934,179 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { + "\025StreamingPullResponse\022A\n" + "\021received_messages\030\001" + " \003(\0132!.google.pubsub.v1.ReceivedMessageB\003\340A\001\022f\n" - + "\030acknowledge_confirmation\030\005 \001(\0132?" - + ".google.pubsub.v1.StreamingPullResponse.AcknowledgeConfirmationB\003\340A\001\022t\n" - + " modify_ack_deadline_confirmation\030\003 \001(\0132E.google." - + "pubsub.v1.StreamingPullResponse.ModifyAckDeadlineConfirmationB\003\340A\001\022d\n" - + "\027subscription_properties\030\004 \001(\0132>.google.pubsub.v1.S" - + "treamingPullResponse.SubscriptionPropertiesB\003\340A\001\032\224\001\n" - + "\027AcknowledgeConfirmation\022\024\n" - + "\007ack_ids\030\001 \003(\tB\003\340A\001\022\034\n" - + "\017invalid_ack_ids\030\002 \003(\tB\003\340A\001\022\036\n" - + "\021unordered_ack_ids\030\003 \003(\tB\003\340A\001\022%\n" - + "\030temporary_failed_ack_ids\030\004 \003(\tB\003\340A\001\032", - "z\n" - + "\035ModifyAckDeadlineConfirmation\022\024\n" - + "\007ack_ids\030\001 \003(\tB\003\340A\001\022\034\n" - + "\017invalid_ack_ids\030\002 \003(\tB\003\340A\001\022%\n" - + "\030temporary_failed_ack_ids\030\003 \003(\tB\003\340A\001\032k\n" - + "\026SubscriptionProperties\022*\n" - + "\035exactly_once_delivery_enabled\030\001 \001(\010B\003\340A\001\022%\n" - + "\030message_ordering_enabled\030\002 \001(\010B\003\340A\001\"\201\003\n" - + "\025CreateSnapshotRequest\0224\n" - + "\004name\030\001 \001(\tB&\340A\002\372A \n" - + "\036pubsub.googleapis.com/Snapshot\022@\n" - + "\014subscription\030\002 \001(\tB*\340A\002\372A$\n" - + "\"pubsub.googleapis.com/Subscription\022H\n" - + "\006labels\030\003 \003(\01323.goo" - + "gle.pubsub.v1.CreateSnapshotRequest.LabelsEntryB\003\340A\001\022J\n" - + "\004tags\030\004 \003(\01321.google.pubsub.v1.CreateSnapshotRequest.TagsEntryB" - + "\t\340A\004\340A\005\340A\001\032-\n" - + "\013LabelsEntry\022\013\n" - + "\003key\030\001 \001(\t\022\r\n" - + "\005value\030\002 \001(\t:\0028\001\032+\n" - + "\tTagsEntry\022\013\n" - + "\003key\030\001 \001(\t\022\r\n" - + "\005value\030\002 \001(\t:\0028\001\"\200\001\n" - + "\025UpdateSnapshotRequest\0221\n" - + "\010snapshot\030\001 \001(\0132\032.google.pubsub.v1.SnapshotB\003\340A\002\0224\n" - + "\013update_mask\030\002" - + " \001(\0132\032.google.protobuf.FieldMaskB\003\340A\002\"\326\002\n" - + "\010Snapshot\022\021\n" - + "\004name\030\001 \001(\tB\003\340A\001\0222\n" - + "\005topic\030\002 \001(\tB#\340A\001\372A\035\n" - + "\033pubsub.googleapis.com/Topic\0224\n" - + "\013expire_time\030\003 \001(\0132\032.google.protobuf.TimestampB\003\340A\001\022;\n" - + "\006labels\030\004" - + " \003(\0132&.google.pubsub.v1.Snapshot.LabelsEntryB\003\340A\001\032-\n" - + "\013LabelsEntry\022\013\n" - + "\003key\030\001 \001(\t\022\r\n" - + "\005value\030\002 \001(\t:\0028\001:a\352A^\n" - + "\036pubsub.googleapis.com/Snapshot\022\'projects/{project}/snapshots/{snapshot}*" - + "\tsnapshots2\010snapshot\"N\n" - + "\022GetSnapshotRequest\0228\n" - + "\010snapshot\030\001 \001(\tB&\340A\002\372A \n" - + "\036pubsub.googleapis.com/Snapshot\"\215\001\n" - + "\024ListSnapshotsRequest\022D\n" - + "\007project\030\001 \001(\tB3\340A\002\372A-\n" - + "+cloudresourcemanager.googleapis.com/Project\022\026\n" - + "\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\n" - + "page_token\030\003 \001(\tB\003\340A\001\"i\n" - + "\025ListSnapshotsResponse\0222\n" - + "\tsnapshots\030\001 \003(\0132\032.google.pubsub.v1.SnapshotB\003\340A\001\022\034\n" - + "\017next_page_token\030\002 \001(\tB\003\340A\001\"Q\n" - + "\025DeleteSnapshotRequest\0228\n" - + "\010snapshot\030\001 \001(\tB&\340A\002\372A \n" - + "\036pubsub.googleapis.com/Snapshot\"\306\001\n" - + "\013SeekRequest\022@\n" - + "\014subscription\030\001 \001(\tB*\340A\002\372A$\n" - + "\"pubsub.googleapis.com/Subscription\022/\n" - + "\004time\030\002 \001(\0132\032.google.protobuf.TimestampB\003\340A\001H\000\022:\n" - + "\010snapshot\030\003 \001(\tB&\340A\001\372A \n" - + "\036pubsub.googleapis.com/SnapshotH\000B\010\n" - + "\006target\"\016\n" - + "\014SeekResponse2\270\013\n" - + "\tPublisher\022q\n" - + "\013CreateTopic\022\027.google.pubsub.v1.Topic\032\027.google.pubsub.v1" - + ".Topic\"0\332A\004name\202\323\344\223\002#\032\036/v1/{name=projects/*/topics/*}:\001*\022\221\001\n" - + "\013UpdateTopic\022$.google.pubsub.v1.UpdateTopicRequest\032\027.google." - + "pubsub.v1.Topic\"C\332A\021topic,update_mask\202\323\344" - + "\223\002)2$/v1/{topic.name=projects/*/topics/*}:\001*\022\223\001\n" - + "\007Publish\022 .google.pubsub.v1.PublishRequest\032!.google.pubsub.v1.PublishRes" - + "ponse\"C\332A\016topic,messages\202\323\344\223\002,\"\'/v1/{topic=projects/*/topics/*}:publish:\001*\022w\n" - + "\010GetTopic\022!.google.pubsub.v1.GetTopicReques" - + "t\032\027.google.pubsub.v1.Topic\"/\332A\005topic\202\323\344\223\002!\022\037/v1/{topic=projects/*/topics/*}\022\212\001\n\n" - + "ListTopics\022#.google.pubsub.v1.ListTopicsRequest\032$.google.pubsub.v1.ListTopicsRes" - + "ponse\"1\332A\007project\202\323\344\223\002!\022\037/v1/{project=projects/*}/topics\022\272\001\n" - + "\026ListTopicSubscriptions\022/.google.pubsub.v1.ListTopicSubscrip" - + "tionsRequest\0320.google.pubsub.v1.ListTopi" - + "cSubscriptionsResponse\"=\332A\005topic\202\323\344\223\002/\022-" - + "/v1/{topic=projects/*/topics/*}/subscriptions\022\252\001\n" - + "\022ListTopicSnapshots\022+.google.pubsub.v1.ListTopicSnapshotsRequest\032,.goog" - + "le.pubsub.v1.ListTopicSnapshotsResponse\"" - + "9\332A\005topic\202\323\344\223\002+\022)/v1/{topic=projects/*/topics/*}/snapshots\022|\n" - + "\013DeleteTopic\022$.google.pubsub.v1.DeleteTopicRequest\032\026.google" - + ".protobuf.Empty\"/\332A\005topic\202\323\344\223\002!*\037/v1/{topic=projects/*/topics/*}\022\255\001\n" - + "\022DetachSubscription\022+.google.pubsub.v1.DetachSubscri" - + "ptionRequest\032,.google.pubsub.v1.DetachSu" - + "bscriptionResponse\"<\202\323\344\223\0026\"4/v1/{subscri" - + "ption=projects/*/subscriptions/*}:detach" - + "\032p\312A\025pubsub.googleapis.com\322AUhttps://www" - + ".googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/pubsub2\322\025\n\n" - + "Subscriber\022\264\001\n" - + "\022CreateSubscription\022\036.google.pubsub.v1.Subscription\032\036.google.pubsub" - + ".v1.Subscription\"^\332A+name,topic,push_con" - + "fig,ack_deadline_seconds\202\323\344\223\002*\032%/v1/{name=projects/*/subscriptions/*}:\001*\022\241\001\n" - + "\017GetSubscription\022(.google.pubsub.v1.GetSubsc" - + "riptionRequest\032\036.google.pubsub.v1.Subscr" - + "iption\"D\332A\014subscription\202\323\344\223\002/\022-/v1/{subscription=projects/*/subscriptions/*}\022\273\001\n" - + "\022UpdateSubscription\022+.google.pubsub.v1.U" - + "pdateSubscriptionRequest\032\036.google.pubsub" - + ".v1.Subscription\"X\332A\030subscription,update" - + "_mask\202\323\344\223\002722/v1/{subscription.name=projects/*/subscriptions/*}:\001*\022\246\001\n" - + "\021ListSubscriptions\022*.google.pubsub.v1.ListSubscrip" - + "tionsRequest\032+.google.pubsub.v1.ListSubs" - + "criptionsResponse\"8\332A\007project\202\323\344\223\002(\022&/v1/{project=projects/*}/subscriptions\022\237\001\n" - + "\022DeleteSubscription\022+.google.pubsub.v1.De" - + "leteSubscriptionRequest\032\026.google.protobu" - + "f.Empty\"D\332A\014subscription\202\323\344\223\002/*-/v1/{sub" - + "scription=projects/*/subscriptions/*}\022\317\001\n" - + "\021ModifyAckDeadline\022*.google.pubsub.v1.M" - + "odifyAckDeadlineRequest\032\026.google.protobu" - + "f.Empty\"v\332A)subscription,ack_ids,ack_dea" - + "dline_seconds\202\323\344\223\002D\"?/v1/{subscription=p" - + "rojects/*/subscriptions/*}:modifyAckDeadline:\001*\022\250\001\n" - + "\013Acknowledge\022$.google.pubsub.v1.AcknowledgeRequest\032\026.google.protobuf." - + "Empty\"[\332A\024subscription,ack_ids\202\323\344\223\002>\"9/v" - + "1/{subscription=projects/*/subscriptions/*}:acknowledge:\001*\022\320\001\n" - + "\004Pull\022\035.google.pubsub.v1.PullRequest\032\036.google.pubsub.v1.Pu" - + "llResponse\"\210\001\332A,subscription,return_imme" - + "diately,max_messages\332A\031subscription,max_" - + "messages\202\323\344\223\0027\"2/v1/{subscription=projects/*/subscriptions/*}:pull:\001*\022f\n\r" - + "StreamingPull\022&.google.pubsub.v1.StreamingPullR" - + "equest\032\'.google.pubsub.v1.StreamingPullResponse\"\000(\0010\001\022\273\001\n" - + "\020ModifyPushConfig\022).google.pubsub.v1.ModifyPushConfigRequest\032\026." - + "google.protobuf.Empty\"d\332A\030subscription,p" - + "ush_config\202\323\344\223\002C\">/v1/{subscription=proj" - + "ects/*/subscriptions/*}:modifyPushConfig:\001*\022\211\001\n" - + "\013GetSnapshot\022$.google.pubsub.v1.GetSnapshotRequest\032\032.google.pubsub.v1.Sna" - + "pshot\"8\332A\010snapshot\202\323\344\223\002\'\022%/v1/{snapshot=projects/*/snapshots/*}\022\226\001\n\r" - + "ListSnapshots\022&.google.pubsub.v1.ListSnapshotsReques" - + "t\032\'.google.pubsub.v1.ListSnapshotsRespon" - + "se\"4\332A\007project\202\323\344\223\002$\022\"/v1/{project=projects/*}/snapshots\022\227\001\n" - + "\016CreateSnapshot\022\'.google.pubsub.v1.CreateSnapshotRequest\032\032.g" - + "oogle.pubsub.v1.Snapshot\"@\332A\021name,subscr" - + "iption\202\323\344\223\002&\032!/v1/{name=projects/*/snapshots/*}:\001*\022\243\001\n" - + "\016UpdateSnapshot\022\'.google.pubsub.v1.UpdateSnapshotRequest\032\032.google." - + "pubsub.v1.Snapshot\"L\332A\024snapshot,update_m" - + "ask\202\323\344\223\002/2*/v1/{snapshot.name=projects/*/snapshots/*}:\001*\022\213\001\n" - + "\016DeleteSnapshot\022\'.google.pubsub.v1.DeleteSnapshotRequest\032\026.g" - + "oogle.protobuf.Empty\"8\332A\010snapshot\202\323\344\223\002\'*" - + "%/v1/{snapshot=projects/*/snapshots/*}\022\204\001\n" - + "\004Seek\022\035.google.pubsub.v1.SeekRequest\032\036" - + ".google.pubsub.v1.SeekResponse\"=\202\323\344\223\0027\"2" - + "/v1/{subscription=projects/*/subscriptio" - + "ns/*}:seek:\001*\032p\312A\025pubsub.googleapis.com\322" - + "AUhttps://www.googleapis.com/auth/cloud-" - + "platform,https://www.googleapis.com/auth/pubsubB\247\003\n" - + "\024com.google.pubsub.v1B\013PubsubProtoP\001Z5cloud.google.com/go/pubsub/v2/a" - + "piv1/pubsubpb;pubsubpb\252\002\026Google.Cloud.Pu" - + "bSub.V1\312\002\026Google\\Cloud\\PubSub\\V1\352\002\031Google::Cloud::PubSub::V1\352Ax\n" - + "!cloudkms.googleapis.com/CryptoKey\022Sprojects/{project}/l" - + "ocations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}\352A\177\n" - + "#analyticshub.googleapis.com/Listing\022Xprojects/{proje" - + "ct}/locations/{location}/dataExchanges/{data_exchange}/listings/{listing}b\006proto3" + + "\030acknowl", + "edge_confirmation\030\005 \001(\0132?.google.pubsub." + + "v1.StreamingPullResponse.AcknowledgeConf" + + "irmationB\003\340A\001\022t\n modify_ack_deadline_con" + + "firmation\030\003 \001(\0132E.google.pubsub.v1.Strea" + + "mingPullResponse.ModifyAckDeadlineConfir" + + "mationB\003\340A\001\022d\n\027subscription_properties\030\004" + + " \001(\0132>.google.pubsub.v1.StreamingPullRes" + + "ponse.SubscriptionPropertiesB\003\340A\001\032\224\001\n\027Ac" + + "knowledgeConfirmation\022\024\n\007ack_ids\030\001 \003(\tB\003" + + "\340A\001\022\034\n\017invalid_ack_ids\030\002 \003(\tB\003\340A\001\022\036\n\021uno" + + "rdered_ack_ids\030\003 \003(\tB\003\340A\001\022%\n\030temporary_f" + + "ailed_ack_ids\030\004 \003(\tB\003\340A\001\032z\n\035ModifyAckDea" + + "dlineConfirmation\022\024\n\007ack_ids\030\001 \003(\tB\003\340A\001\022" + + "\034\n\017invalid_ack_ids\030\002 \003(\tB\003\340A\001\022%\n\030tempora" + + "ry_failed_ack_ids\030\003 \003(\tB\003\340A\001\032k\n\026Subscrip" + + "tionProperties\022*\n\035exactly_once_delivery_" + + "enabled\030\001 \001(\010B\003\340A\001\022%\n\030message_ordering_e" + + "nabled\030\002 \001(\010B\003\340A\001\"\201\003\n\025CreateSnapshotRequ" + + "est\0224\n\004name\030\001 \001(\tB&\340A\002\372A \n\036pubsub.google" + + "apis.com/Snapshot\022@\n\014subscription\030\002 \001(\tB" + + "*\340A\002\372A$\n\"pubsub.googleapis.com/Subscript" + + "ion\022H\n\006labels\030\003 \003(\01323.google.pubsub.v1.C" + + "reateSnapshotRequest.LabelsEntryB\003\340A\001\022J\n" + + "\004tags\030\004 \003(\01321.google.pubsub.v1.CreateSna" + + "pshotRequest.TagsEntryB\t\340A\004\340A\005\340A\001\032-\n\013Lab" + + "elsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001" + + "\032+\n\tTagsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(" + + "\t:\0028\001\"\200\001\n\025UpdateSnapshotRequest\0221\n\010snaps" + + "hot\030\001 \001(\0132\032.google.pubsub.v1.SnapshotB\003\340" + + "A\002\0224\n\013update_mask\030\002 \001(\0132\032.google.protobu" + + "f.FieldMaskB\003\340A\002\"\326\002\n\010Snapshot\022\021\n\004name\030\001 " + + "\001(\tB\003\340A\001\0222\n\005topic\030\002 \001(\tB#\340A\001\372A\035\n\033pubsub." + + "googleapis.com/Topic\0224\n\013expire_time\030\003 \001(" + + "\0132\032.google.protobuf.TimestampB\003\340A\001\022;\n\006la" + + "bels\030\004 \003(\0132&.google.pubsub.v1.Snapshot.L" + + "abelsEntryB\003\340A\001\032-\n\013LabelsEntry\022\013\n\003key\030\001 " + + "\001(\t\022\r\n\005value\030\002 \001(\t:\0028\001:a\352A^\n\036pubsub.goog" + + "leapis.com/Snapshot\022\'projects/{project}/" + + "snapshots/{snapshot}*\tsnapshots2\010snapsho" + + "t\"N\n\022GetSnapshotRequest\0228\n\010snapshot\030\001 \001(" + + "\tB&\340A\002\372A \n\036pubsub.googleapis.com/Snapsho" + + "t\"\215\001\n\024ListSnapshotsRequest\022D\n\007project\030\001 " + + "\001(\tB3\340A\002\372A-\n+cloudresourcemanager.google" + + "apis.com/Project\022\026\n\tpage_size\030\002 \001(\005B\003\340A\001" + + "\022\027\n\npage_token\030\003 \001(\tB\003\340A\001\"i\n\025ListSnapsho" + + "tsResponse\0222\n\tsnapshots\030\001 \003(\0132\032.google.p" + + "ubsub.v1.SnapshotB\003\340A\001\022\034\n\017next_page_toke" + + "n\030\002 \001(\tB\003\340A\001\"Q\n\025DeleteSnapshotRequest\0228\n" + + "\010snapshot\030\001 \001(\tB&\340A\002\372A \n\036pubsub.googleap" + + "is.com/Snapshot\"\306\001\n\013SeekRequest\022@\n\014subsc" + + "ription\030\001 \001(\tB*\340A\002\372A$\n\"pubsub.googleapis" + + ".com/Subscription\022/\n\004time\030\002 \001(\0132\032.google" + + ".protobuf.TimestampB\003\340A\001H\000\022:\n\010snapshot\030\003" + + " \001(\tB&\340A\001\372A \n\036pubsub.googleapis.com/Snap" + + "shotH\000B\010\n\006target\"\016\n\014SeekResponse2\270\013\n\tPub" + + "lisher\022q\n\013CreateTopic\022\027.google.pubsub.v1" + + ".Topic\032\027.google.pubsub.v1.Topic\"0\332A\004name" + + "\202\323\344\223\002#\032\036/v1/{name=projects/*/topics/*}:\001" + + "*\022\221\001\n\013UpdateTopic\022$.google.pubsub.v1.Upd" + + "ateTopicRequest\032\027.google.pubsub.v1.Topic" + + "\"C\332A\021topic,update_mask\202\323\344\223\002)2$/v1/{topic" + + ".name=projects/*/topics/*}:\001*\022\223\001\n\007Publis" + + "h\022 .google.pubsub.v1.PublishRequest\032!.go" + + "ogle.pubsub.v1.PublishResponse\"C\332A\016topic" + + ",messages\202\323\344\223\002,\"\'/v1/{topic=projects/*/t" + + "opics/*}:publish:\001*\022w\n\010GetTopic\022!.google" + + ".pubsub.v1.GetTopicRequest\032\027.google.pubs" + + "ub.v1.Topic\"/\332A\005topic\202\323\344\223\002!\022\037/v1/{topic=" + + "projects/*/topics/*}\022\212\001\n\nListTopics\022#.go" + + "ogle.pubsub.v1.ListTopicsRequest\032$.googl" + + "e.pubsub.v1.ListTopicsResponse\"1\332A\007proje" + + "ct\202\323\344\223\002!\022\037/v1/{project=projects/*}/topic" + + "s\022\272\001\n\026ListTopicSubscriptions\022/.google.pu" + + "bsub.v1.ListTopicSubscriptionsRequest\0320." + + "google.pubsub.v1.ListTopicSubscriptionsR" + + "esponse\"=\332A\005topic\202\323\344\223\002/\022-/v1/{topic=proj" + + "ects/*/topics/*}/subscriptions\022\252\001\n\022ListT" + + "opicSnapshots\022+.google.pubsub.v1.ListTop" + + "icSnapshotsRequest\032,.google.pubsub.v1.Li" + + "stTopicSnapshotsResponse\"9\332A\005topic\202\323\344\223\002+" + + "\022)/v1/{topic=projects/*/topics/*}/snapsh" + + "ots\022|\n\013DeleteTopic\022$.google.pubsub.v1.De" + + "leteTopicRequest\032\026.google.protobuf.Empty" + + "\"/\332A\005topic\202\323\344\223\002!*\037/v1/{topic=projects/*/" + + "topics/*}\022\255\001\n\022DetachSubscription\022+.googl" + + "e.pubsub.v1.DetachSubscriptionRequest\032,." + + "google.pubsub.v1.DetachSubscriptionRespo" + + "nse\"<\202\323\344\223\0026\"4/v1/{subscription=projects/" + + "*/subscriptions/*}:detach\032p\312A\025pubsub.goo" + + "gleapis.com\322AUhttps://www.googleapis.com" + + "/auth/cloud-platform,https://www.googlea" + + "pis.com/auth/pubsub2\322\025\n\nSubscriber\022\264\001\n\022C" + + "reateSubscription\022\036.google.pubsub.v1.Sub" + + "scription\032\036.google.pubsub.v1.Subscriptio" + + "n\"^\332A+name,topic,push_config,ack_deadlin" + + "e_seconds\202\323\344\223\002*\032%/v1/{name=projects/*/su" + + "bscriptions/*}:\001*\022\241\001\n\017GetSubscription\022(." + + "google.pubsub.v1.GetSubscriptionRequest\032" + + "\036.google.pubsub.v1.Subscription\"D\332A\014subs" + + "cription\202\323\344\223\002/\022-/v1/{subscription=projec" + + "ts/*/subscriptions/*}\022\273\001\n\022UpdateSubscrip" + + "tion\022+.google.pubsub.v1.UpdateSubscripti" + + "onRequest\032\036.google.pubsub.v1.Subscriptio" + + "n\"X\332A\030subscription,update_mask\202\323\344\223\002722/v" + + "1/{subscription.name=projects/*/subscrip" + + "tions/*}:\001*\022\246\001\n\021ListSubscriptions\022*.goog" + + "le.pubsub.v1.ListSubscriptionsRequest\032+." + + "google.pubsub.v1.ListSubscriptionsRespon" + + "se\"8\332A\007project\202\323\344\223\002(\022&/v1/{project=proje" + + "cts/*}/subscriptions\022\237\001\n\022DeleteSubscript" + + "ion\022+.google.pubsub.v1.DeleteSubscriptio" + + "nRequest\032\026.google.protobuf.Empty\"D\332A\014sub" + + "scription\202\323\344\223\002/*-/v1/{subscription=proje" + + "cts/*/subscriptions/*}\022\317\001\n\021ModifyAckDead" + + "line\022*.google.pubsub.v1.ModifyAckDeadlin" + + "eRequest\032\026.google.protobuf.Empty\"v\332A)sub" + + "scription,ack_ids,ack_deadline_seconds\202\323" + + "\344\223\002D\"?/v1/{subscription=projects/*/subsc" + + "riptions/*}:modifyAckDeadline:\001*\022\250\001\n\013Ack" + + "nowledge\022$.google.pubsub.v1.AcknowledgeR" + + "equest\032\026.google.protobuf.Empty\"[\332A\024subsc" + + "ription,ack_ids\202\323\344\223\002>\"9/v1/{subscription" + + "=projects/*/subscriptions/*}:acknowledge" + + ":\001*\022\320\001\n\004Pull\022\035.google.pubsub.v1.PullRequ" + + "est\032\036.google.pubsub.v1.PullResponse\"\210\001\332A" + + ",subscription,return_immediately,max_mes" + + "sages\332A\031subscription,max_messages\202\323\344\223\0027\"" + + "2/v1/{subscription=projects/*/subscripti" + + "ons/*}:pull:\001*\022f\n\rStreamingPull\022&.google" + + ".pubsub.v1.StreamingPullRequest\032\'.google" + + ".pubsub.v1.StreamingPullResponse\"\000(\0010\001\022\273" + + "\001\n\020ModifyPushConfig\022).google.pubsub.v1.M" + + "odifyPushConfigRequest\032\026.google.protobuf" + + ".Empty\"d\332A\030subscription,push_config\202\323\344\223\002" + + "C\">/v1/{subscription=projects/*/subscrip" + + "tions/*}:modifyPushConfig:\001*\022\211\001\n\013GetSnap" + + "shot\022$.google.pubsub.v1.GetSnapshotReque" + + "st\032\032.google.pubsub.v1.Snapshot\"8\332A\010snaps" + + "hot\202\323\344\223\002\'\022%/v1/{snapshot=projects/*/snap" + + "shots/*}\022\226\001\n\rListSnapshots\022&.google.pubs" + + "ub.v1.ListSnapshotsRequest\032\'.google.pubs" + + "ub.v1.ListSnapshotsResponse\"4\332A\007project\202" + + "\323\344\223\002$\022\"/v1/{project=projects/*}/snapshot" + + "s\022\227\001\n\016CreateSnapshot\022\'.google.pubsub.v1." + + "CreateSnapshotRequest\032\032.google.pubsub.v1" + + ".Snapshot\"@\332A\021name,subscription\202\323\344\223\002&\032!/" + + "v1/{name=projects/*/snapshots/*}:\001*\022\243\001\n\016" + + "UpdateSnapshot\022\'.google.pubsub.v1.Update" + + "SnapshotRequest\032\032.google.pubsub.v1.Snaps" + + "hot\"L\332A\024snapshot,update_mask\202\323\344\223\002/2*/v1/" + + "{snapshot.name=projects/*/snapshots/*}:\001" + + "*\022\213\001\n\016DeleteSnapshot\022\'.google.pubsub.v1." + + "DeleteSnapshotRequest\032\026.google.protobuf." + + "Empty\"8\332A\010snapshot\202\323\344\223\002\'*%/v1/{snapshot=" + + "projects/*/snapshots/*}\022\204\001\n\004Seek\022\035.googl" + + "e.pubsub.v1.SeekRequest\032\036.google.pubsub." + + "v1.SeekResponse\"=\202\323\344\223\0027\"2/v1/{subscripti" + + "on=projects/*/subscriptions/*}:seek:\001*\032p" + + "\312A\025pubsub.googleapis.com\322AUhttps://www.g" + + "oogleapis.com/auth/cloud-platform,https:" + + "//www.googleapis.com/auth/pubsubB\247\003\n\024com" + + ".google.pubsub.v1B\013PubsubProtoP\001Z5cloud." + + "google.com/go/pubsub/v2/apiv1/pubsubpb;p" + + "ubsubpb\252\002\026Google.Cloud.PubSub.V1\312\002\026Googl" + + "e\\Cloud\\PubSub\\V1\352\002\031Google::Cloud::PubSu" + + "b::V1\352Ax\n!cloudkms.googleapis.com/Crypto" + + "Key\022Sprojects/{project}/locations/{locat" + + "ion}/keyRings/{key_ring}/cryptoKeys/{cry" + + "pto_key}\352A\177\n#analyticshub.googleapis.com" + + "/Listing\022Xprojects/{project}/locations/{" + + "location}/dataExchanges/{data_exchange}/" + + "listings/{listing}b\006proto3" }; descriptor = com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( @@ -1511,6 +1544,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "PushConfig", "BigqueryConfig", "CloudStorageConfig", + "BigtableConfig", "AckDeadlineSeconds", "RetainAckedMessages", "MessageRetentionDuration", @@ -1631,8 +1665,15 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "UseTableSchema", "ServiceAccountEmail", }); + internal_static_google_pubsub_v1_BigtableConfig_descriptor = getDescriptor().getMessageType(29); + internal_static_google_pubsub_v1_BigtableConfig_fieldAccessorTable = + new com.google.protobuf.GeneratedMessage.FieldAccessorTable( + internal_static_google_pubsub_v1_BigtableConfig_descriptor, + new java.lang.String[] { + "Table", "AppProfileId", "ServiceAccountEmail", "WriteMetadata", "State", + }); internal_static_google_pubsub_v1_CloudStorageConfig_descriptor = - getDescriptor().getMessageType(29); + getDescriptor().getMessageType(30); internal_static_google_pubsub_v1_CloudStorageConfig_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_CloudStorageConfig_descriptor, @@ -1665,7 +1706,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "WriteMetadata", "UseTopicSchema", }); internal_static_google_pubsub_v1_ReceivedMessage_descriptor = - getDescriptor().getMessageType(30); + getDescriptor().getMessageType(31); internal_static_google_pubsub_v1_ReceivedMessage_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_ReceivedMessage_descriptor, @@ -1673,7 +1714,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "AckId", "Message", "DeliveryAttempt", }); internal_static_google_pubsub_v1_GetSubscriptionRequest_descriptor = - getDescriptor().getMessageType(31); + getDescriptor().getMessageType(32); internal_static_google_pubsub_v1_GetSubscriptionRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_GetSubscriptionRequest_descriptor, @@ -1681,7 +1722,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Subscription", }); internal_static_google_pubsub_v1_UpdateSubscriptionRequest_descriptor = - getDescriptor().getMessageType(32); + getDescriptor().getMessageType(33); internal_static_google_pubsub_v1_UpdateSubscriptionRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_UpdateSubscriptionRequest_descriptor, @@ -1689,7 +1730,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Subscription", "UpdateMask", }); internal_static_google_pubsub_v1_ListSubscriptionsRequest_descriptor = - getDescriptor().getMessageType(33); + getDescriptor().getMessageType(34); internal_static_google_pubsub_v1_ListSubscriptionsRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_ListSubscriptionsRequest_descriptor, @@ -1697,7 +1738,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Project", "PageSize", "PageToken", }); internal_static_google_pubsub_v1_ListSubscriptionsResponse_descriptor = - getDescriptor().getMessageType(34); + getDescriptor().getMessageType(35); internal_static_google_pubsub_v1_ListSubscriptionsResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_ListSubscriptionsResponse_descriptor, @@ -1705,7 +1746,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Subscriptions", "NextPageToken", }); internal_static_google_pubsub_v1_DeleteSubscriptionRequest_descriptor = - getDescriptor().getMessageType(35); + getDescriptor().getMessageType(36); internal_static_google_pubsub_v1_DeleteSubscriptionRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_DeleteSubscriptionRequest_descriptor, @@ -1713,21 +1754,21 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Subscription", }); internal_static_google_pubsub_v1_ModifyPushConfigRequest_descriptor = - getDescriptor().getMessageType(36); + getDescriptor().getMessageType(37); internal_static_google_pubsub_v1_ModifyPushConfigRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_ModifyPushConfigRequest_descriptor, new java.lang.String[] { "Subscription", "PushConfig", }); - internal_static_google_pubsub_v1_PullRequest_descriptor = getDescriptor().getMessageType(37); + internal_static_google_pubsub_v1_PullRequest_descriptor = getDescriptor().getMessageType(38); internal_static_google_pubsub_v1_PullRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_PullRequest_descriptor, new java.lang.String[] { "Subscription", "ReturnImmediately", "MaxMessages", }); - internal_static_google_pubsub_v1_PullResponse_descriptor = getDescriptor().getMessageType(38); + internal_static_google_pubsub_v1_PullResponse_descriptor = getDescriptor().getMessageType(39); internal_static_google_pubsub_v1_PullResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_PullResponse_descriptor, @@ -1735,7 +1776,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ReceivedMessages", }); internal_static_google_pubsub_v1_ModifyAckDeadlineRequest_descriptor = - getDescriptor().getMessageType(39); + getDescriptor().getMessageType(40); internal_static_google_pubsub_v1_ModifyAckDeadlineRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_ModifyAckDeadlineRequest_descriptor, @@ -1743,7 +1784,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Subscription", "AckIds", "AckDeadlineSeconds", }); internal_static_google_pubsub_v1_AcknowledgeRequest_descriptor = - getDescriptor().getMessageType(40); + getDescriptor().getMessageType(41); internal_static_google_pubsub_v1_AcknowledgeRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_AcknowledgeRequest_descriptor, @@ -1751,7 +1792,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Subscription", "AckIds", }); internal_static_google_pubsub_v1_StreamingPullRequest_descriptor = - getDescriptor().getMessageType(41); + getDescriptor().getMessageType(42); internal_static_google_pubsub_v1_StreamingPullRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_StreamingPullRequest_descriptor, @@ -1767,7 +1808,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ProtocolVersion", }); internal_static_google_pubsub_v1_StreamingPullResponse_descriptor = - getDescriptor().getMessageType(42); + getDescriptor().getMessageType(43); internal_static_google_pubsub_v1_StreamingPullResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_StreamingPullResponse_descriptor, @@ -1802,7 +1843,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "ExactlyOnceDeliveryEnabled", "MessageOrderingEnabled", }); internal_static_google_pubsub_v1_CreateSnapshotRequest_descriptor = - getDescriptor().getMessageType(43); + getDescriptor().getMessageType(44); internal_static_google_pubsub_v1_CreateSnapshotRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_CreateSnapshotRequest_descriptor, @@ -1826,14 +1867,14 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_pubsub_v1_UpdateSnapshotRequest_descriptor = - getDescriptor().getMessageType(44); + getDescriptor().getMessageType(45); internal_static_google_pubsub_v1_UpdateSnapshotRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_UpdateSnapshotRequest_descriptor, new java.lang.String[] { "Snapshot", "UpdateMask", }); - internal_static_google_pubsub_v1_Snapshot_descriptor = getDescriptor().getMessageType(45); + internal_static_google_pubsub_v1_Snapshot_descriptor = getDescriptor().getMessageType(46); internal_static_google_pubsub_v1_Snapshot_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_Snapshot_descriptor, @@ -1849,7 +1890,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Key", "Value", }); internal_static_google_pubsub_v1_GetSnapshotRequest_descriptor = - getDescriptor().getMessageType(46); + getDescriptor().getMessageType(47); internal_static_google_pubsub_v1_GetSnapshotRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_GetSnapshotRequest_descriptor, @@ -1857,7 +1898,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Snapshot", }); internal_static_google_pubsub_v1_ListSnapshotsRequest_descriptor = - getDescriptor().getMessageType(47); + getDescriptor().getMessageType(48); internal_static_google_pubsub_v1_ListSnapshotsRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_ListSnapshotsRequest_descriptor, @@ -1865,7 +1906,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Project", "PageSize", "PageToken", }); internal_static_google_pubsub_v1_ListSnapshotsResponse_descriptor = - getDescriptor().getMessageType(48); + getDescriptor().getMessageType(49); internal_static_google_pubsub_v1_ListSnapshotsResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_ListSnapshotsResponse_descriptor, @@ -1873,21 +1914,21 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "Snapshots", "NextPageToken", }); internal_static_google_pubsub_v1_DeleteSnapshotRequest_descriptor = - getDescriptor().getMessageType(49); + getDescriptor().getMessageType(50); internal_static_google_pubsub_v1_DeleteSnapshotRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_DeleteSnapshotRequest_descriptor, new java.lang.String[] { "Snapshot", }); - internal_static_google_pubsub_v1_SeekRequest_descriptor = getDescriptor().getMessageType(50); + internal_static_google_pubsub_v1_SeekRequest_descriptor = getDescriptor().getMessageType(51); internal_static_google_pubsub_v1_SeekRequest_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_SeekRequest_descriptor, new java.lang.String[] { "Subscription", "Time", "Snapshot", "Target", }); - internal_static_google_pubsub_v1_SeekResponse_descriptor = getDescriptor().getMessageType(51); + internal_static_google_pubsub_v1_SeekResponse_descriptor = getDescriptor().getMessageType(52); internal_static_google_pubsub_v1_SeekResponse_fieldAccessorTable = new com.google.protobuf.GeneratedMessage.FieldAccessorTable( internal_static_google_pubsub_v1_SeekResponse_descriptor, new java.lang.String[] {}); diff --git a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PullRequest.java b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PullRequest.java index 54de83b87..79c5b0775 100644 --- a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PullRequest.java +++ b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PullRequest.java @@ -147,7 +147,7 @@ public com.google.protobuf.ByteString getSubscriptionBytes() { * * * @deprecated google.pubsub.v1.PullRequest.return_immediately is deprecated. See - * google/pubsub/v1/pubsub.proto;l=2098 + * google/pubsub/v1/pubsub.proto;l=2180 * @return The returnImmediately. */ @java.lang.Override @@ -673,7 +673,7 @@ public Builder setSubscriptionBytes(com.google.protobuf.ByteString value) { * * * @deprecated google.pubsub.v1.PullRequest.return_immediately is deprecated. See - * google/pubsub/v1/pubsub.proto;l=2098 + * google/pubsub/v1/pubsub.proto;l=2180 * @return The returnImmediately. */ @java.lang.Override @@ -700,7 +700,7 @@ public boolean getReturnImmediately() { * * * @deprecated google.pubsub.v1.PullRequest.return_immediately is deprecated. See - * google/pubsub/v1/pubsub.proto;l=2098 + * google/pubsub/v1/pubsub.proto;l=2180 * @param value The returnImmediately to set. * @return This builder for chaining. */ @@ -731,7 +731,7 @@ public Builder setReturnImmediately(boolean value) { * * * @deprecated google.pubsub.v1.PullRequest.return_immediately is deprecated. See - * google/pubsub/v1/pubsub.proto;l=2098 + * google/pubsub/v1/pubsub.proto;l=2180 * @return This builder for chaining. */ @java.lang.Deprecated diff --git a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PullRequestOrBuilder.java b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PullRequestOrBuilder.java index ab3fd9f9d..1346ad309 100644 --- a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PullRequestOrBuilder.java +++ b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/PullRequestOrBuilder.java @@ -75,7 +75,7 @@ public interface PullRequestOrBuilder * * * @deprecated google.pubsub.v1.PullRequest.return_immediately is deprecated. See - * google/pubsub/v1/pubsub.proto;l=2098 + * google/pubsub/v1/pubsub.proto;l=2180 * @return The returnImmediately. */ @java.lang.Deprecated diff --git a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/Subscription.java b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/Subscription.java index 867496f2f..ab7ef789d 100644 --- a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/Subscription.java +++ b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/Subscription.java @@ -1458,6 +1458,68 @@ public com.google.pubsub.v1.CloudStorageConfigOrBuilder getCloudStorageConfigOrB : cloudStorageConfig_; } + public static final int BIGTABLE_CONFIG_FIELD_NUMBER = 27; + private com.google.pubsub.v1.BigtableConfig bigtableConfig_; + + /** + * + * + *
+   * Optional. If delivery to Bigtable is used with this subscription, this
+   * field is used to configure it.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the bigtableConfig field is set. + */ + @java.lang.Override + public boolean hasBigtableConfig() { + return ((bitField0_ & 0x00000008) != 0); + } + + /** + * + * + *
+   * Optional. If delivery to Bigtable is used with this subscription, this
+   * field is used to configure it.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The bigtableConfig. + */ + @java.lang.Override + public com.google.pubsub.v1.BigtableConfig getBigtableConfig() { + return bigtableConfig_ == null + ? com.google.pubsub.v1.BigtableConfig.getDefaultInstance() + : bigtableConfig_; + } + + /** + * + * + *
+   * Optional. If delivery to Bigtable is used with this subscription, this
+   * field is used to configure it.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + @java.lang.Override + public com.google.pubsub.v1.BigtableConfigOrBuilder getBigtableConfigOrBuilder() { + return bigtableConfig_ == null + ? com.google.pubsub.v1.BigtableConfig.getDefaultInstance() + : bigtableConfig_; + } + public static final int ACK_DEADLINE_SECONDS_FIELD_NUMBER = 5; private int ackDeadlineSeconds_ = 0; @@ -1542,7 +1604,7 @@ public boolean getRetainAckedMessages() { */ @java.lang.Override public boolean hasMessageRetentionDuration() { - return ((bitField0_ & 0x00000008) != 0); + return ((bitField0_ & 0x00000010) != 0); } /** @@ -1748,7 +1810,7 @@ public boolean getEnableMessageOrdering() { */ @java.lang.Override public boolean hasExpirationPolicy() { - return ((bitField0_ & 0x00000010) != 0); + return ((bitField0_ & 0x00000020) != 0); } /** @@ -1887,7 +1949,7 @@ public com.google.protobuf.ByteString getFilterBytes() { */ @java.lang.Override public boolean hasDeadLetterPolicy() { - return ((bitField0_ & 0x00000020) != 0); + return ((bitField0_ & 0x00000040) != 0); } /** @@ -1966,7 +2028,7 @@ public com.google.pubsub.v1.DeadLetterPolicyOrBuilder getDeadLetterPolicyOrBuild */ @java.lang.Override public boolean hasRetryPolicy() { - return ((bitField0_ & 0x00000040) != 0); + return ((bitField0_ & 0x00000080) != 0); } /** @@ -2095,7 +2157,7 @@ public boolean getEnableExactlyOnceDelivery() { */ @java.lang.Override public boolean hasTopicMessageRetentionDuration() { - return ((bitField0_ & 0x00000080) != 0); + return ((bitField0_ & 0x00000100) != 0); } /** @@ -2209,7 +2271,7 @@ public com.google.pubsub.v1.Subscription.State getState() { */ @java.lang.Override public boolean hasAnalyticsHubSubscriptionInfo() { - return ((bitField0_ & 0x00000100) != 0); + return ((bitField0_ & 0x00000200) != 0); } /** @@ -2509,7 +2571,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (retainAckedMessages_ != false) { output.writeBool(7, retainAckedMessages_); } - if (((bitField0_ & 0x00000008) != 0)) { + if (((bitField0_ & 0x00000010) != 0)) { output.writeMessage(8, getMessageRetentionDuration()); } com.google.protobuf.GeneratedMessage.serializeStringMapTo( @@ -2517,16 +2579,16 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (enableMessageOrdering_ != false) { output.writeBool(10, enableMessageOrdering_); } - if (((bitField0_ & 0x00000010) != 0)) { + if (((bitField0_ & 0x00000020) != 0)) { output.writeMessage(11, getExpirationPolicy()); } if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { com.google.protobuf.GeneratedMessage.writeString(output, 12, filter_); } - if (((bitField0_ & 0x00000020) != 0)) { + if (((bitField0_ & 0x00000040) != 0)) { output.writeMessage(13, getDeadLetterPolicy()); } - if (((bitField0_ & 0x00000040) != 0)) { + if (((bitField0_ & 0x00000080) != 0)) { output.writeMessage(14, getRetryPolicy()); } if (detached_ != false) { @@ -2535,7 +2597,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (enableExactlyOnceDelivery_ != false) { output.writeBool(16, enableExactlyOnceDelivery_); } - if (((bitField0_ & 0x00000080) != 0)) { + if (((bitField0_ & 0x00000100) != 0)) { output.writeMessage(17, getTopicMessageRetentionDuration()); } if (((bitField0_ & 0x00000002) != 0)) { @@ -2547,7 +2609,7 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (((bitField0_ & 0x00000004) != 0)) { output.writeMessage(22, getCloudStorageConfig()); } - if (((bitField0_ & 0x00000100) != 0)) { + if (((bitField0_ & 0x00000200) != 0)) { output.writeMessage(23, getAnalyticsHubSubscriptionInfo()); } for (int i = 0; i < messageTransforms_.size(); i++) { @@ -2555,6 +2617,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io } com.google.protobuf.GeneratedMessage.serializeStringMapTo( output, internalGetTags(), TagsDefaultEntryHolder.defaultEntry, 26); + if (((bitField0_ & 0x00000008) != 0)) { + output.writeMessage(27, getBigtableConfig()); + } getUnknownFields().writeTo(output); } @@ -2579,7 +2644,7 @@ public int getSerializedSize() { if (retainAckedMessages_ != false) { size += com.google.protobuf.CodedOutputStream.computeBoolSize(7, retainAckedMessages_); } - if (((bitField0_ & 0x00000008) != 0)) { + if (((bitField0_ & 0x00000010) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize( 8, getMessageRetentionDuration()); @@ -2597,16 +2662,16 @@ public int getSerializedSize() { if (enableMessageOrdering_ != false) { size += com.google.protobuf.CodedOutputStream.computeBoolSize(10, enableMessageOrdering_); } - if (((bitField0_ & 0x00000010) != 0)) { + if (((bitField0_ & 0x00000020) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(11, getExpirationPolicy()); } if (!com.google.protobuf.GeneratedMessage.isStringEmpty(filter_)) { size += com.google.protobuf.GeneratedMessage.computeStringSize(12, filter_); } - if (((bitField0_ & 0x00000020) != 0)) { + if (((bitField0_ & 0x00000040) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(13, getDeadLetterPolicy()); } - if (((bitField0_ & 0x00000040) != 0)) { + if (((bitField0_ & 0x00000080) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(14, getRetryPolicy()); } if (detached_ != false) { @@ -2615,7 +2680,7 @@ public int getSerializedSize() { if (enableExactlyOnceDelivery_ != false) { size += com.google.protobuf.CodedOutputStream.computeBoolSize(16, enableExactlyOnceDelivery_); } - if (((bitField0_ & 0x00000080) != 0)) { + if (((bitField0_ & 0x00000100) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize( 17, getTopicMessageRetentionDuration()); @@ -2629,7 +2694,7 @@ public int getSerializedSize() { if (((bitField0_ & 0x00000004) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(22, getCloudStorageConfig()); } - if (((bitField0_ & 0x00000100) != 0)) { + if (((bitField0_ & 0x00000200) != 0)) { size += com.google.protobuf.CodedOutputStream.computeMessageSize( 23, getAnalyticsHubSubscriptionInfo()); @@ -2648,6 +2713,9 @@ public int getSerializedSize() { .build(); size += com.google.protobuf.CodedOutputStream.computeMessageSize(26, tags__); } + if (((bitField0_ & 0x00000008) != 0)) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(27, getBigtableConfig()); + } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; @@ -2677,6 +2745,10 @@ public boolean equals(final java.lang.Object obj) { if (hasCloudStorageConfig()) { if (!getCloudStorageConfig().equals(other.getCloudStorageConfig())) return false; } + if (hasBigtableConfig() != other.hasBigtableConfig()) return false; + if (hasBigtableConfig()) { + if (!getBigtableConfig().equals(other.getBigtableConfig())) return false; + } if (getAckDeadlineSeconds() != other.getAckDeadlineSeconds()) return false; if (getRetainAckedMessages() != other.getRetainAckedMessages()) return false; if (hasMessageRetentionDuration() != other.hasMessageRetentionDuration()) return false; @@ -2741,6 +2813,10 @@ public int hashCode() { hash = (37 * hash) + CLOUD_STORAGE_CONFIG_FIELD_NUMBER; hash = (53 * hash) + getCloudStorageConfig().hashCode(); } + if (hasBigtableConfig()) { + hash = (37 * hash) + BIGTABLE_CONFIG_FIELD_NUMBER; + hash = (53 * hash) + getBigtableConfig().hashCode(); + } hash = (37 * hash) + ACK_DEADLINE_SECONDS_FIELD_NUMBER; hash = (53 * hash) + getAckDeadlineSeconds(); hash = (37 * hash) + RETAIN_ACKED_MESSAGES_FIELD_NUMBER; @@ -2962,6 +3038,7 @@ private void maybeForceBuilderInitialization() { internalGetPushConfigFieldBuilder(); internalGetBigqueryConfigFieldBuilder(); internalGetCloudStorageConfigFieldBuilder(); + internalGetBigtableConfigFieldBuilder(); internalGetMessageRetentionDurationFieldBuilder(); internalGetExpirationPolicyFieldBuilder(); internalGetDeadLetterPolicyFieldBuilder(); @@ -2993,6 +3070,11 @@ public Builder clear() { cloudStorageConfigBuilder_.dispose(); cloudStorageConfigBuilder_ = null; } + bigtableConfig_ = null; + if (bigtableConfigBuilder_ != null) { + bigtableConfigBuilder_.dispose(); + bigtableConfigBuilder_ = null; + } ackDeadlineSeconds_ = 0; retainAckedMessages_ = false; messageRetentionDuration_ = null; @@ -3037,7 +3119,7 @@ public Builder clear() { messageTransforms_ = null; messageTransformsBuilder_.clear(); } - bitField0_ = (bitField0_ & ~0x00080000); + bitField0_ = (bitField0_ & ~0x00100000); internalGetMutableTags().clear(); return this; } @@ -3075,9 +3157,9 @@ public com.google.pubsub.v1.Subscription buildPartial() { private void buildPartialRepeatedFields(com.google.pubsub.v1.Subscription result) { if (messageTransformsBuilder_ == null) { - if (((bitField0_ & 0x00080000) != 0)) { + if (((bitField0_ & 0x00100000) != 0)) { messageTransforms_ = java.util.Collections.unmodifiableList(messageTransforms_); - bitField0_ = (bitField0_ & ~0x00080000); + bitField0_ = (bitField0_ & ~0x00100000); } result.messageTransforms_ = messageTransforms_; } else { @@ -3111,67 +3193,72 @@ private void buildPartial0(com.google.pubsub.v1.Subscription result) { to_bitField0_ |= 0x00000004; } if (((from_bitField0_ & 0x00000020) != 0)) { - result.ackDeadlineSeconds_ = ackDeadlineSeconds_; + result.bigtableConfig_ = + bigtableConfigBuilder_ == null ? bigtableConfig_ : bigtableConfigBuilder_.build(); + to_bitField0_ |= 0x00000008; } if (((from_bitField0_ & 0x00000040) != 0)) { - result.retainAckedMessages_ = retainAckedMessages_; + result.ackDeadlineSeconds_ = ackDeadlineSeconds_; } if (((from_bitField0_ & 0x00000080) != 0)) { + result.retainAckedMessages_ = retainAckedMessages_; + } + if (((from_bitField0_ & 0x00000100) != 0)) { result.messageRetentionDuration_ = messageRetentionDurationBuilder_ == null ? messageRetentionDuration_ : messageRetentionDurationBuilder_.build(); - to_bitField0_ |= 0x00000008; + to_bitField0_ |= 0x00000010; } - if (((from_bitField0_ & 0x00000100) != 0)) { + if (((from_bitField0_ & 0x00000200) != 0)) { result.labels_ = internalGetLabels(); result.labels_.makeImmutable(); } - if (((from_bitField0_ & 0x00000200) != 0)) { + if (((from_bitField0_ & 0x00000400) != 0)) { result.enableMessageOrdering_ = enableMessageOrdering_; } - if (((from_bitField0_ & 0x00000400) != 0)) { + if (((from_bitField0_ & 0x00000800) != 0)) { result.expirationPolicy_ = expirationPolicyBuilder_ == null ? expirationPolicy_ : expirationPolicyBuilder_.build(); - to_bitField0_ |= 0x00000010; + to_bitField0_ |= 0x00000020; } - if (((from_bitField0_ & 0x00000800) != 0)) { + if (((from_bitField0_ & 0x00001000) != 0)) { result.filter_ = filter_; } - if (((from_bitField0_ & 0x00001000) != 0)) { + if (((from_bitField0_ & 0x00002000) != 0)) { result.deadLetterPolicy_ = deadLetterPolicyBuilder_ == null ? deadLetterPolicy_ : deadLetterPolicyBuilder_.build(); - to_bitField0_ |= 0x00000020; + to_bitField0_ |= 0x00000040; } - if (((from_bitField0_ & 0x00002000) != 0)) { + if (((from_bitField0_ & 0x00004000) != 0)) { result.retryPolicy_ = retryPolicyBuilder_ == null ? retryPolicy_ : retryPolicyBuilder_.build(); - to_bitField0_ |= 0x00000040; + to_bitField0_ |= 0x00000080; } - if (((from_bitField0_ & 0x00004000) != 0)) { + if (((from_bitField0_ & 0x00008000) != 0)) { result.detached_ = detached_; } - if (((from_bitField0_ & 0x00008000) != 0)) { + if (((from_bitField0_ & 0x00010000) != 0)) { result.enableExactlyOnceDelivery_ = enableExactlyOnceDelivery_; } - if (((from_bitField0_ & 0x00010000) != 0)) { + if (((from_bitField0_ & 0x00020000) != 0)) { result.topicMessageRetentionDuration_ = topicMessageRetentionDurationBuilder_ == null ? topicMessageRetentionDuration_ : topicMessageRetentionDurationBuilder_.build(); - to_bitField0_ |= 0x00000080; + to_bitField0_ |= 0x00000100; } - if (((from_bitField0_ & 0x00020000) != 0)) { + if (((from_bitField0_ & 0x00040000) != 0)) { result.state_ = state_; } - if (((from_bitField0_ & 0x00040000) != 0)) { + if (((from_bitField0_ & 0x00080000) != 0)) { result.analyticsHubSubscriptionInfo_ = analyticsHubSubscriptionInfoBuilder_ == null ? analyticsHubSubscriptionInfo_ : analyticsHubSubscriptionInfoBuilder_.build(); - to_bitField0_ |= 0x00000100; + to_bitField0_ |= 0x00000200; } - if (((from_bitField0_ & 0x00100000) != 0)) { + if (((from_bitField0_ & 0x00200000) != 0)) { result.tags_ = internalGetTags(); result.tags_.makeImmutable(); } @@ -3209,6 +3296,9 @@ public Builder mergeFrom(com.google.pubsub.v1.Subscription other) { if (other.hasCloudStorageConfig()) { mergeCloudStorageConfig(other.getCloudStorageConfig()); } + if (other.hasBigtableConfig()) { + mergeBigtableConfig(other.getBigtableConfig()); + } if (other.getAckDeadlineSeconds() != 0) { setAckDeadlineSeconds(other.getAckDeadlineSeconds()); } @@ -3219,7 +3309,7 @@ public Builder mergeFrom(com.google.pubsub.v1.Subscription other) { mergeMessageRetentionDuration(other.getMessageRetentionDuration()); } internalGetMutableLabels().mergeFrom(other.internalGetLabels()); - bitField0_ |= 0x00000100; + bitField0_ |= 0x00000200; if (other.getEnableMessageOrdering() != false) { setEnableMessageOrdering(other.getEnableMessageOrdering()); } @@ -3228,7 +3318,7 @@ public Builder mergeFrom(com.google.pubsub.v1.Subscription other) { } if (!other.getFilter().isEmpty()) { filter_ = other.filter_; - bitField0_ |= 0x00000800; + bitField0_ |= 0x00001000; onChanged(); } if (other.hasDeadLetterPolicy()) { @@ -3256,7 +3346,7 @@ public Builder mergeFrom(com.google.pubsub.v1.Subscription other) { if (!other.messageTransforms_.isEmpty()) { if (messageTransforms_.isEmpty()) { messageTransforms_ = other.messageTransforms_; - bitField0_ = (bitField0_ & ~0x00080000); + bitField0_ = (bitField0_ & ~0x00100000); } else { ensureMessageTransformsIsMutable(); messageTransforms_.addAll(other.messageTransforms_); @@ -3269,7 +3359,7 @@ public Builder mergeFrom(com.google.pubsub.v1.Subscription other) { messageTransformsBuilder_.dispose(); messageTransformsBuilder_ = null; messageTransforms_ = other.messageTransforms_; - bitField0_ = (bitField0_ & ~0x00080000); + bitField0_ = (bitField0_ & ~0x00100000); messageTransformsBuilder_ = com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ? internalGetMessageTransformsFieldBuilder() @@ -3280,7 +3370,7 @@ public Builder mergeFrom(com.google.pubsub.v1.Subscription other) { } } internalGetMutableTags().mergeFrom(other.internalGetTags()); - bitField0_ |= 0x00100000; + bitField0_ |= 0x00200000; this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; @@ -3329,13 +3419,13 @@ public Builder mergeFrom( case 40: { ackDeadlineSeconds_ = input.readInt32(); - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000040; break; } // case 40 case 56: { retainAckedMessages_ = input.readBool(); - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000080; break; } // case 56 case 66: @@ -3343,7 +3433,7 @@ public Builder mergeFrom( input.readMessage( internalGetMessageRetentionDurationFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; break; } // case 66 case 74: @@ -3355,52 +3445,52 @@ public Builder mergeFrom( internalGetMutableLabels() .getMutableMap() .put(labels__.getKey(), labels__.getValue()); - bitField0_ |= 0x00000100; + bitField0_ |= 0x00000200; break; } // case 74 case 80: { enableMessageOrdering_ = input.readBool(); - bitField0_ |= 0x00000200; + bitField0_ |= 0x00000400; break; } // case 80 case 90: { input.readMessage( internalGetExpirationPolicyFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00000400; + bitField0_ |= 0x00000800; break; } // case 90 case 98: { filter_ = input.readStringRequireUtf8(); - bitField0_ |= 0x00000800; + bitField0_ |= 0x00001000; break; } // case 98 case 106: { input.readMessage( internalGetDeadLetterPolicyFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00001000; + bitField0_ |= 0x00002000; break; } // case 106 case 114: { input.readMessage( internalGetRetryPolicyFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00002000; + bitField0_ |= 0x00004000; break; } // case 114 case 120: { detached_ = input.readBool(); - bitField0_ |= 0x00004000; + bitField0_ |= 0x00008000; break; } // case 120 case 128: { enableExactlyOnceDelivery_ = input.readBool(); - bitField0_ |= 0x00008000; + bitField0_ |= 0x00010000; break; } // case 128 case 138: @@ -3408,7 +3498,7 @@ public Builder mergeFrom( input.readMessage( internalGetTopicMessageRetentionDurationFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00010000; + bitField0_ |= 0x00020000; break; } // case 138 case 146: @@ -3421,7 +3511,7 @@ public Builder mergeFrom( case 152: { state_ = input.readEnum(); - bitField0_ |= 0x00020000; + bitField0_ |= 0x00040000; break; } // case 152 case 178: @@ -3436,7 +3526,7 @@ public Builder mergeFrom( input.readMessage( internalGetAnalyticsHubSubscriptionInfoFieldBuilder().getBuilder(), extensionRegistry); - bitField0_ |= 0x00040000; + bitField0_ |= 0x00080000; break; } // case 186 case 202: @@ -3458,9 +3548,16 @@ public Builder mergeFrom( input.readMessage( TagsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry); internalGetMutableTags().getMutableMap().put(tags__.getKey(), tags__.getValue()); - bitField0_ |= 0x00100000; + bitField0_ |= 0x00200000; break; } // case 210 + case 218: + { + input.readMessage( + internalGetBigtableConfigFieldBuilder().getBuilder(), extensionRegistry); + bitField0_ |= 0x00000020; + break; + } // case 218 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { @@ -4413,6 +4510,227 @@ public com.google.pubsub.v1.CloudStorageConfigOrBuilder getCloudStorageConfigOrB return cloudStorageConfigBuilder_; } + private com.google.pubsub.v1.BigtableConfig bigtableConfig_; + private com.google.protobuf.SingleFieldBuilder< + com.google.pubsub.v1.BigtableConfig, + com.google.pubsub.v1.BigtableConfig.Builder, + com.google.pubsub.v1.BigtableConfigOrBuilder> + bigtableConfigBuilder_; + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the bigtableConfig field is set. + */ + public boolean hasBigtableConfig() { + return ((bitField0_ & 0x00000020) != 0); + } + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The bigtableConfig. + */ + public com.google.pubsub.v1.BigtableConfig getBigtableConfig() { + if (bigtableConfigBuilder_ == null) { + return bigtableConfig_ == null + ? com.google.pubsub.v1.BigtableConfig.getDefaultInstance() + : bigtableConfig_; + } else { + return bigtableConfigBuilder_.getMessage(); + } + } + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setBigtableConfig(com.google.pubsub.v1.BigtableConfig value) { + if (bigtableConfigBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + bigtableConfig_ = value; + } else { + bigtableConfigBuilder_.setMessage(value); + } + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder setBigtableConfig(com.google.pubsub.v1.BigtableConfig.Builder builderForValue) { + if (bigtableConfigBuilder_ == null) { + bigtableConfig_ = builderForValue.build(); + } else { + bigtableConfigBuilder_.setMessage(builderForValue.build()); + } + bitField0_ |= 0x00000020; + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder mergeBigtableConfig(com.google.pubsub.v1.BigtableConfig value) { + if (bigtableConfigBuilder_ == null) { + if (((bitField0_ & 0x00000020) != 0) + && bigtableConfig_ != null + && bigtableConfig_ != com.google.pubsub.v1.BigtableConfig.getDefaultInstance()) { + getBigtableConfigBuilder().mergeFrom(value); + } else { + bigtableConfig_ = value; + } + } else { + bigtableConfigBuilder_.mergeFrom(value); + } + if (bigtableConfig_ != null) { + bitField0_ |= 0x00000020; + onChanged(); + } + return this; + } + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public Builder clearBigtableConfig() { + bitField0_ = (bitField0_ & ~0x00000020); + bigtableConfig_ = null; + if (bigtableConfigBuilder_ != null) { + bigtableConfigBuilder_.dispose(); + bigtableConfigBuilder_ = null; + } + onChanged(); + return this; + } + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.pubsub.v1.BigtableConfig.Builder getBigtableConfigBuilder() { + bitField0_ |= 0x00000020; + onChanged(); + return internalGetBigtableConfigFieldBuilder().getBuilder(); + } + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + public com.google.pubsub.v1.BigtableConfigOrBuilder getBigtableConfigOrBuilder() { + if (bigtableConfigBuilder_ != null) { + return bigtableConfigBuilder_.getMessageOrBuilder(); + } else { + return bigtableConfig_ == null + ? com.google.pubsub.v1.BigtableConfig.getDefaultInstance() + : bigtableConfig_; + } + } + + /** + * + * + *
+     * Optional. If delivery to Bigtable is used with this subscription, this
+     * field is used to configure it.
+     * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + private com.google.protobuf.SingleFieldBuilder< + com.google.pubsub.v1.BigtableConfig, + com.google.pubsub.v1.BigtableConfig.Builder, + com.google.pubsub.v1.BigtableConfigOrBuilder> + internalGetBigtableConfigFieldBuilder() { + if (bigtableConfigBuilder_ == null) { + bigtableConfigBuilder_ = + new com.google.protobuf.SingleFieldBuilder< + com.google.pubsub.v1.BigtableConfig, + com.google.pubsub.v1.BigtableConfig.Builder, + com.google.pubsub.v1.BigtableConfigOrBuilder>( + getBigtableConfig(), getParentForChildren(), isClean()); + bigtableConfig_ = null; + } + return bigtableConfigBuilder_; + } + private int ackDeadlineSeconds_; /** @@ -4484,7 +4802,7 @@ public int getAckDeadlineSeconds() { public Builder setAckDeadlineSeconds(int value) { ackDeadlineSeconds_ = value; - bitField0_ |= 0x00000020; + bitField0_ |= 0x00000040; onChanged(); return this; } @@ -4520,7 +4838,7 @@ public Builder setAckDeadlineSeconds(int value) { * @return This builder for chaining. */ public Builder clearAckDeadlineSeconds() { - bitField0_ = (bitField0_ & ~0x00000020); + bitField0_ = (bitField0_ & ~0x00000040); ackDeadlineSeconds_ = 0; onChanged(); return this; @@ -4569,7 +4887,7 @@ public boolean getRetainAckedMessages() { public Builder setRetainAckedMessages(boolean value) { retainAckedMessages_ = value; - bitField0_ |= 0x00000040; + bitField0_ |= 0x00000080; onChanged(); return this; } @@ -4591,7 +4909,7 @@ public Builder setRetainAckedMessages(boolean value) { * @return This builder for chaining. */ public Builder clearRetainAckedMessages() { - bitField0_ = (bitField0_ & ~0x00000040); + bitField0_ = (bitField0_ & ~0x00000080); retainAckedMessages_ = false; onChanged(); return this; @@ -4622,7 +4940,7 @@ public Builder clearRetainAckedMessages() { * @return Whether the messageRetentionDuration field is set. */ public boolean hasMessageRetentionDuration() { - return ((bitField0_ & 0x00000080) != 0); + return ((bitField0_ & 0x00000100) != 0); } /** @@ -4676,7 +4994,7 @@ public Builder setMessageRetentionDuration(com.google.protobuf.Duration value) { } else { messageRetentionDurationBuilder_.setMessage(value); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -4703,7 +5021,7 @@ public Builder setMessageRetentionDuration( } else { messageRetentionDurationBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; onChanged(); return this; } @@ -4725,7 +5043,7 @@ public Builder setMessageRetentionDuration( */ public Builder mergeMessageRetentionDuration(com.google.protobuf.Duration value) { if (messageRetentionDurationBuilder_ == null) { - if (((bitField0_ & 0x00000080) != 0) + if (((bitField0_ & 0x00000100) != 0) && messageRetentionDuration_ != null && messageRetentionDuration_ != com.google.protobuf.Duration.getDefaultInstance()) { getMessageRetentionDurationBuilder().mergeFrom(value); @@ -4736,7 +5054,7 @@ public Builder mergeMessageRetentionDuration(com.google.protobuf.Duration value) messageRetentionDurationBuilder_.mergeFrom(value); } if (messageRetentionDuration_ != null) { - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; onChanged(); } return this; @@ -4758,7 +5076,7 @@ public Builder mergeMessageRetentionDuration(com.google.protobuf.Duration value) * */ public Builder clearMessageRetentionDuration() { - bitField0_ = (bitField0_ & ~0x00000080); + bitField0_ = (bitField0_ & ~0x00000100); messageRetentionDuration_ = null; if (messageRetentionDurationBuilder_ != null) { messageRetentionDurationBuilder_.dispose(); @@ -4784,7 +5102,7 @@ public Builder clearMessageRetentionDuration() { * */ public com.google.protobuf.Duration.Builder getMessageRetentionDurationBuilder() { - bitField0_ |= 0x00000080; + bitField0_ |= 0x00000100; onChanged(); return internalGetMessageRetentionDurationFieldBuilder().getBuilder(); } @@ -4863,7 +5181,7 @@ private com.google.protobuf.MapField interna if (!labels_.isMutable()) { labels_ = labels_.copy(); } - bitField0_ |= 0x00000100; + bitField0_ |= 0x00000200; onChanged(); return labels_; } @@ -4957,7 +5275,7 @@ public java.lang.String getLabelsOrThrow(java.lang.String key) { } public Builder clearLabels() { - bitField0_ = (bitField0_ & ~0x00000100); + bitField0_ = (bitField0_ & ~0x00000200); internalGetMutableLabels().getMutableMap().clear(); return this; } @@ -4983,7 +5301,7 @@ public Builder removeLabels(java.lang.String key) { /** Use alternate mutation accessors instead. */ @java.lang.Deprecated public java.util.Map getMutableLabels() { - bitField0_ |= 0x00000100; + bitField0_ |= 0x00000200; return internalGetMutableLabels().getMutableMap(); } @@ -5005,7 +5323,7 @@ public Builder putLabels(java.lang.String key, java.lang.String value) { throw new NullPointerException("map value"); } internalGetMutableLabels().getMutableMap().put(key, value); - bitField0_ |= 0x00000100; + bitField0_ |= 0x00000200; return this; } @@ -5021,7 +5339,7 @@ public Builder putLabels(java.lang.String key, java.lang.String value) { */ public Builder putAllLabels(java.util.Map values) { internalGetMutableLabels().getMutableMap().putAll(values); - bitField0_ |= 0x00000100; + bitField0_ |= 0x00000200; return this; } @@ -5064,7 +5382,7 @@ public boolean getEnableMessageOrdering() { public Builder setEnableMessageOrdering(boolean value) { enableMessageOrdering_ = value; - bitField0_ |= 0x00000200; + bitField0_ |= 0x00000400; onChanged(); return this; } @@ -5084,7 +5402,7 @@ public Builder setEnableMessageOrdering(boolean value) { * @return This builder for chaining. */ public Builder clearEnableMessageOrdering() { - bitField0_ = (bitField0_ & ~0x00000200); + bitField0_ = (bitField0_ & ~0x00000400); enableMessageOrdering_ = false; onChanged(); return this; @@ -5117,7 +5435,7 @@ public Builder clearEnableMessageOrdering() { * @return Whether the expirationPolicy field is set. */ public boolean hasExpirationPolicy() { - return ((bitField0_ & 0x00000400) != 0); + return ((bitField0_ & 0x00000800) != 0); } /** @@ -5175,7 +5493,7 @@ public Builder setExpirationPolicy(com.google.pubsub.v1.ExpirationPolicy value) } else { expirationPolicyBuilder_.setMessage(value); } - bitField0_ |= 0x00000400; + bitField0_ |= 0x00000800; onChanged(); return this; } @@ -5204,7 +5522,7 @@ public Builder setExpirationPolicy( } else { expirationPolicyBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00000400; + bitField0_ |= 0x00000800; onChanged(); return this; } @@ -5228,7 +5546,7 @@ public Builder setExpirationPolicy( */ public Builder mergeExpirationPolicy(com.google.pubsub.v1.ExpirationPolicy value) { if (expirationPolicyBuilder_ == null) { - if (((bitField0_ & 0x00000400) != 0) + if (((bitField0_ & 0x00000800) != 0) && expirationPolicy_ != null && expirationPolicy_ != com.google.pubsub.v1.ExpirationPolicy.getDefaultInstance()) { getExpirationPolicyBuilder().mergeFrom(value); @@ -5239,7 +5557,7 @@ public Builder mergeExpirationPolicy(com.google.pubsub.v1.ExpirationPolicy value expirationPolicyBuilder_.mergeFrom(value); } if (expirationPolicy_ != null) { - bitField0_ |= 0x00000400; + bitField0_ |= 0x00000800; onChanged(); } return this; @@ -5263,7 +5581,7 @@ public Builder mergeExpirationPolicy(com.google.pubsub.v1.ExpirationPolicy value * */ public Builder clearExpirationPolicy() { - bitField0_ = (bitField0_ & ~0x00000400); + bitField0_ = (bitField0_ & ~0x00000800); expirationPolicy_ = null; if (expirationPolicyBuilder_ != null) { expirationPolicyBuilder_.dispose(); @@ -5291,7 +5609,7 @@ public Builder clearExpirationPolicy() { * */ public com.google.pubsub.v1.ExpirationPolicy.Builder getExpirationPolicyBuilder() { - bitField0_ |= 0x00000400; + bitField0_ |= 0x00000800; onChanged(); return internalGetExpirationPolicyFieldBuilder().getBuilder(); } @@ -5434,7 +5752,7 @@ public Builder setFilter(java.lang.String value) { throw new NullPointerException(); } filter_ = value; - bitField0_ |= 0x00000800; + bitField0_ |= 0x00001000; onChanged(); return this; } @@ -5456,7 +5774,7 @@ public Builder setFilter(java.lang.String value) { */ public Builder clearFilter() { filter_ = getDefaultInstance().getFilter(); - bitField0_ = (bitField0_ & ~0x00000800); + bitField0_ = (bitField0_ & ~0x00001000); onChanged(); return this; } @@ -5483,7 +5801,7 @@ public Builder setFilterBytes(com.google.protobuf.ByteString value) { } checkByteStringIsUtf8(value); filter_ = value; - bitField0_ |= 0x00000800; + bitField0_ |= 0x00001000; onChanged(); return this; } @@ -5516,7 +5834,7 @@ public Builder setFilterBytes(com.google.protobuf.ByteString value) { * @return Whether the deadLetterPolicy field is set. */ public boolean hasDeadLetterPolicy() { - return ((bitField0_ & 0x00001000) != 0); + return ((bitField0_ & 0x00002000) != 0); } /** @@ -5576,7 +5894,7 @@ public Builder setDeadLetterPolicy(com.google.pubsub.v1.DeadLetterPolicy value) } else { deadLetterPolicyBuilder_.setMessage(value); } - bitField0_ |= 0x00001000; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -5606,7 +5924,7 @@ public Builder setDeadLetterPolicy( } else { deadLetterPolicyBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00001000; + bitField0_ |= 0x00002000; onChanged(); return this; } @@ -5631,7 +5949,7 @@ public Builder setDeadLetterPolicy( */ public Builder mergeDeadLetterPolicy(com.google.pubsub.v1.DeadLetterPolicy value) { if (deadLetterPolicyBuilder_ == null) { - if (((bitField0_ & 0x00001000) != 0) + if (((bitField0_ & 0x00002000) != 0) && deadLetterPolicy_ != null && deadLetterPolicy_ != com.google.pubsub.v1.DeadLetterPolicy.getDefaultInstance()) { getDeadLetterPolicyBuilder().mergeFrom(value); @@ -5642,7 +5960,7 @@ public Builder mergeDeadLetterPolicy(com.google.pubsub.v1.DeadLetterPolicy value deadLetterPolicyBuilder_.mergeFrom(value); } if (deadLetterPolicy_ != null) { - bitField0_ |= 0x00001000; + bitField0_ |= 0x00002000; onChanged(); } return this; @@ -5667,7 +5985,7 @@ public Builder mergeDeadLetterPolicy(com.google.pubsub.v1.DeadLetterPolicy value * */ public Builder clearDeadLetterPolicy() { - bitField0_ = (bitField0_ & ~0x00001000); + bitField0_ = (bitField0_ & ~0x00002000); deadLetterPolicy_ = null; if (deadLetterPolicyBuilder_ != null) { deadLetterPolicyBuilder_.dispose(); @@ -5696,7 +6014,7 @@ public Builder clearDeadLetterPolicy() { * */ public com.google.pubsub.v1.DeadLetterPolicy.Builder getDeadLetterPolicyBuilder() { - bitField0_ |= 0x00001000; + bitField0_ |= 0x00002000; onChanged(); return internalGetDeadLetterPolicyFieldBuilder().getBuilder(); } @@ -5791,7 +6109,7 @@ public com.google.pubsub.v1.DeadLetterPolicyOrBuilder getDeadLetterPolicyOrBuild * @return Whether the retryPolicy field is set. */ public boolean hasRetryPolicy() { - return ((bitField0_ & 0x00002000) != 0); + return ((bitField0_ & 0x00004000) != 0); } /** @@ -5849,7 +6167,7 @@ public Builder setRetryPolicy(com.google.pubsub.v1.RetryPolicy value) { } else { retryPolicyBuilder_.setMessage(value); } - bitField0_ |= 0x00002000; + bitField0_ |= 0x00004000; onChanged(); return this; } @@ -5877,7 +6195,7 @@ public Builder setRetryPolicy(com.google.pubsub.v1.RetryPolicy.Builder builderFo } else { retryPolicyBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00002000; + bitField0_ |= 0x00004000; onChanged(); return this; } @@ -5901,7 +6219,7 @@ public Builder setRetryPolicy(com.google.pubsub.v1.RetryPolicy.Builder builderFo */ public Builder mergeRetryPolicy(com.google.pubsub.v1.RetryPolicy value) { if (retryPolicyBuilder_ == null) { - if (((bitField0_ & 0x00002000) != 0) + if (((bitField0_ & 0x00004000) != 0) && retryPolicy_ != null && retryPolicy_ != com.google.pubsub.v1.RetryPolicy.getDefaultInstance()) { getRetryPolicyBuilder().mergeFrom(value); @@ -5912,7 +6230,7 @@ public Builder mergeRetryPolicy(com.google.pubsub.v1.RetryPolicy value) { retryPolicyBuilder_.mergeFrom(value); } if (retryPolicy_ != null) { - bitField0_ |= 0x00002000; + bitField0_ |= 0x00004000; onChanged(); } return this; @@ -5936,7 +6254,7 @@ public Builder mergeRetryPolicy(com.google.pubsub.v1.RetryPolicy value) { * */ public Builder clearRetryPolicy() { - bitField0_ = (bitField0_ & ~0x00002000); + bitField0_ = (bitField0_ & ~0x00004000); retryPolicy_ = null; if (retryPolicyBuilder_ != null) { retryPolicyBuilder_.dispose(); @@ -5964,7 +6282,7 @@ public Builder clearRetryPolicy() { * */ public com.google.pubsub.v1.RetryPolicy.Builder getRetryPolicyBuilder() { - bitField0_ |= 0x00002000; + bitField0_ |= 0x00004000; onChanged(); return internalGetRetryPolicyFieldBuilder().getBuilder(); } @@ -6071,7 +6389,7 @@ public boolean getDetached() { public Builder setDetached(boolean value) { detached_ = value; - bitField0_ |= 0x00004000; + bitField0_ |= 0x00008000; onChanged(); return this; } @@ -6092,7 +6410,7 @@ public Builder setDetached(boolean value) { * @return This builder for chaining. */ public Builder clearDetached() { - bitField0_ = (bitField0_ & ~0x00004000); + bitField0_ = (bitField0_ & ~0x00008000); detached_ = false; onChanged(); return this; @@ -6155,7 +6473,7 @@ public boolean getEnableExactlyOnceDelivery() { public Builder setEnableExactlyOnceDelivery(boolean value) { enableExactlyOnceDelivery_ = value; - bitField0_ |= 0x00008000; + bitField0_ |= 0x00010000; onChanged(); return this; } @@ -6184,7 +6502,7 @@ public Builder setEnableExactlyOnceDelivery(boolean value) { * @return This builder for chaining. */ public Builder clearEnableExactlyOnceDelivery() { - bitField0_ = (bitField0_ & ~0x00008000); + bitField0_ = (bitField0_ & ~0x00010000); enableExactlyOnceDelivery_ = false; onChanged(); return this; @@ -6216,7 +6534,7 @@ public Builder clearEnableExactlyOnceDelivery() { * @return Whether the topicMessageRetentionDuration field is set. */ public boolean hasTopicMessageRetentionDuration() { - return ((bitField0_ & 0x00010000) != 0); + return ((bitField0_ & 0x00020000) != 0); } /** @@ -6272,7 +6590,7 @@ public Builder setTopicMessageRetentionDuration(com.google.protobuf.Duration val } else { topicMessageRetentionDurationBuilder_.setMessage(value); } - bitField0_ |= 0x00010000; + bitField0_ |= 0x00020000; onChanged(); return this; } @@ -6300,7 +6618,7 @@ public Builder setTopicMessageRetentionDuration( } else { topicMessageRetentionDurationBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00010000; + bitField0_ |= 0x00020000; onChanged(); return this; } @@ -6323,7 +6641,7 @@ public Builder setTopicMessageRetentionDuration( */ public Builder mergeTopicMessageRetentionDuration(com.google.protobuf.Duration value) { if (topicMessageRetentionDurationBuilder_ == null) { - if (((bitField0_ & 0x00010000) != 0) + if (((bitField0_ & 0x00020000) != 0) && topicMessageRetentionDuration_ != null && topicMessageRetentionDuration_ != com.google.protobuf.Duration.getDefaultInstance()) { @@ -6335,7 +6653,7 @@ public Builder mergeTopicMessageRetentionDuration(com.google.protobuf.Duration v topicMessageRetentionDurationBuilder_.mergeFrom(value); } if (topicMessageRetentionDuration_ != null) { - bitField0_ |= 0x00010000; + bitField0_ |= 0x00020000; onChanged(); } return this; @@ -6358,7 +6676,7 @@ public Builder mergeTopicMessageRetentionDuration(com.google.protobuf.Duration v * */ public Builder clearTopicMessageRetentionDuration() { - bitField0_ = (bitField0_ & ~0x00010000); + bitField0_ = (bitField0_ & ~0x00020000); topicMessageRetentionDuration_ = null; if (topicMessageRetentionDurationBuilder_ != null) { topicMessageRetentionDurationBuilder_.dispose(); @@ -6385,7 +6703,7 @@ public Builder clearTopicMessageRetentionDuration() { * */ public com.google.protobuf.Duration.Builder getTopicMessageRetentionDurationBuilder() { - bitField0_ |= 0x00010000; + bitField0_ |= 0x00020000; onChanged(); return internalGetTopicMessageRetentionDurationFieldBuilder().getBuilder(); } @@ -6487,7 +6805,7 @@ public int getStateValue() { */ public Builder setStateValue(int value) { state_ = value; - bitField0_ |= 0x00020000; + bitField0_ |= 0x00040000; onChanged(); return this; } @@ -6532,7 +6850,7 @@ public Builder setState(com.google.pubsub.v1.Subscription.State value) { if (value == null) { throw new NullPointerException(); } - bitField0_ |= 0x00020000; + bitField0_ |= 0x00040000; state_ = value.getNumber(); onChanged(); return this; @@ -6553,7 +6871,7 @@ public Builder setState(com.google.pubsub.v1.Subscription.State value) { * @return This builder for chaining. */ public Builder clearState() { - bitField0_ = (bitField0_ & ~0x00020000); + bitField0_ = (bitField0_ & ~0x00040000); state_ = 0; onChanged(); return this; @@ -6582,7 +6900,7 @@ public Builder clearState() { * @return Whether the analyticsHubSubscriptionInfo field is set. */ public boolean hasAnalyticsHubSubscriptionInfo() { - return ((bitField0_ & 0x00040000) != 0); + return ((bitField0_ & 0x00080000) != 0); } /** @@ -6632,7 +6950,7 @@ public Builder setAnalyticsHubSubscriptionInfo( } else { analyticsHubSubscriptionInfoBuilder_.setMessage(value); } - bitField0_ |= 0x00040000; + bitField0_ |= 0x00080000; onChanged(); return this; } @@ -6656,7 +6974,7 @@ public Builder setAnalyticsHubSubscriptionInfo( } else { analyticsHubSubscriptionInfoBuilder_.setMessage(builderForValue.build()); } - bitField0_ |= 0x00040000; + bitField0_ |= 0x00080000; onChanged(); return this; } @@ -6676,7 +6994,7 @@ public Builder setAnalyticsHubSubscriptionInfo( public Builder mergeAnalyticsHubSubscriptionInfo( com.google.pubsub.v1.Subscription.AnalyticsHubSubscriptionInfo value) { if (analyticsHubSubscriptionInfoBuilder_ == null) { - if (((bitField0_ & 0x00040000) != 0) + if (((bitField0_ & 0x00080000) != 0) && analyticsHubSubscriptionInfo_ != null && analyticsHubSubscriptionInfo_ != com.google.pubsub.v1.Subscription.AnalyticsHubSubscriptionInfo @@ -6689,7 +7007,7 @@ public Builder mergeAnalyticsHubSubscriptionInfo( analyticsHubSubscriptionInfoBuilder_.mergeFrom(value); } if (analyticsHubSubscriptionInfo_ != null) { - bitField0_ |= 0x00040000; + bitField0_ |= 0x00080000; onChanged(); } return this; @@ -6708,7 +7026,7 @@ public Builder mergeAnalyticsHubSubscriptionInfo( * */ public Builder clearAnalyticsHubSubscriptionInfo() { - bitField0_ = (bitField0_ & ~0x00040000); + bitField0_ = (bitField0_ & ~0x00080000); analyticsHubSubscriptionInfo_ = null; if (analyticsHubSubscriptionInfoBuilder_ != null) { analyticsHubSubscriptionInfoBuilder_.dispose(); @@ -6732,7 +7050,7 @@ public Builder clearAnalyticsHubSubscriptionInfo() { */ public com.google.pubsub.v1.Subscription.AnalyticsHubSubscriptionInfo.Builder getAnalyticsHubSubscriptionInfoBuilder() { - bitField0_ |= 0x00040000; + bitField0_ |= 0x00080000; onChanged(); return internalGetAnalyticsHubSubscriptionInfoFieldBuilder().getBuilder(); } @@ -6793,10 +7111,10 @@ public Builder clearAnalyticsHubSubscriptionInfo() { java.util.Collections.emptyList(); private void ensureMessageTransformsIsMutable() { - if (!((bitField0_ & 0x00080000) != 0)) { + if (!((bitField0_ & 0x00100000) != 0)) { messageTransforms_ = new java.util.ArrayList(messageTransforms_); - bitField0_ |= 0x00080000; + bitField0_ |= 0x00100000; } } @@ -7055,7 +7373,7 @@ public Builder addAllMessageTransforms( public Builder clearMessageTransforms() { if (messageTransformsBuilder_ == null) { messageTransforms_ = java.util.Collections.emptyList(); - bitField0_ = (bitField0_ & ~0x00080000); + bitField0_ = (bitField0_ & ~0x00100000); onChanged(); } else { messageTransformsBuilder_.clear(); @@ -7206,7 +7524,7 @@ public com.google.pubsub.v1.MessageTransform.Builder addMessageTransformsBuilder com.google.pubsub.v1.MessageTransform.Builder, com.google.pubsub.v1.MessageTransformOrBuilder>( messageTransforms_, - ((bitField0_ & 0x00080000) != 0), + ((bitField0_ & 0x00100000) != 0), getParentForChildren(), isClean()); messageTransforms_ = null; @@ -7231,7 +7549,7 @@ private com.google.protobuf.MapField interna if (!tags_.isMutable()) { tags_ = tags_.copy(); } - bitField0_ |= 0x00100000; + bitField0_ |= 0x00200000; onChanged(); return tags_; } @@ -7349,7 +7667,7 @@ public java.lang.String getTagsOrThrow(java.lang.String key) { } public Builder clearTags() { - bitField0_ = (bitField0_ & ~0x00100000); + bitField0_ = (bitField0_ & ~0x00200000); internalGetMutableTags().getMutableMap().clear(); return this; } @@ -7381,7 +7699,7 @@ public Builder removeTags(java.lang.String key) { /** Use alternate mutation accessors instead. */ @java.lang.Deprecated public java.util.Map getMutableTags() { - bitField0_ |= 0x00100000; + bitField0_ |= 0x00200000; return internalGetMutableTags().getMutableMap(); } @@ -7409,7 +7727,7 @@ public Builder putTags(java.lang.String key, java.lang.String value) { throw new NullPointerException("map value"); } internalGetMutableTags().getMutableMap().put(key, value); - bitField0_ |= 0x00100000; + bitField0_ |= 0x00200000; return this; } @@ -7431,7 +7749,7 @@ public Builder putTags(java.lang.String key, java.lang.String value) { */ public Builder putAllTags(java.util.Map values) { internalGetMutableTags().getMutableMap().putAll(values); - bitField0_ |= 0x00100000; + bitField0_ |= 0x00200000; return this; } diff --git a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/SubscriptionOrBuilder.java b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/SubscriptionOrBuilder.java index 3b6932128..ebb45ec6a 100644 --- a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/SubscriptionOrBuilder.java +++ b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/SubscriptionOrBuilder.java @@ -235,6 +235,52 @@ public interface SubscriptionOrBuilder */ com.google.pubsub.v1.CloudStorageConfigOrBuilder getCloudStorageConfigOrBuilder(); + /** + * + * + *
+   * Optional. If delivery to Bigtable is used with this subscription, this
+   * field is used to configure it.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return Whether the bigtableConfig field is set. + */ + boolean hasBigtableConfig(); + + /** + * + * + *
+   * Optional. If delivery to Bigtable is used with this subscription, this
+   * field is used to configure it.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + * + * @return The bigtableConfig. + */ + com.google.pubsub.v1.BigtableConfig getBigtableConfig(); + + /** + * + * + *
+   * Optional. If delivery to Bigtable is used with this subscription, this
+   * field is used to configure it.
+   * 
+ * + * + * .google.pubsub.v1.BigtableConfig bigtable_config = 27 [(.google.api.field_behavior) = OPTIONAL]; + * + */ + com.google.pubsub.v1.BigtableConfigOrBuilder getBigtableConfigOrBuilder(); + /** * * diff --git a/proto-google-cloud-pubsub-v1/src/main/proto/google/pubsub/v1/pubsub.proto b/proto-google-cloud-pubsub-v1/src/main/proto/google/pubsub/v1/pubsub.proto index 9a24bc1d4..3f07ec45c 100644 --- a/proto-google-cloud-pubsub-v1/src/main/proto/google/pubsub/v1/pubsub.proto +++ b/proto-google-cloud-pubsub-v1/src/main/proto/google/pubsub/v1/pubsub.proto @@ -1475,6 +1475,10 @@ message Subscription { CloudStorageConfig cloud_storage_config = 22 [(google.api.field_behavior) = OPTIONAL]; + // Optional. If delivery to Bigtable is used with this subscription, this + // field is used to configure it. + BigtableConfig bigtable_config = 27 [(google.api.field_behavior) = OPTIONAL]; + // Optional. The approximate amount of time (on a best-effort basis) Pub/Sub // waits for the subscriber to acknowledge receipt before resending the // message. In the interval after the message is delivered and before it is @@ -1853,6 +1857,84 @@ message BigQueryConfig { string service_account_email = 7 [(google.api.field_behavior) = OPTIONAL]; } +// Configuration for a Bigtable subscription. The Pub/Sub message will be +// written to a Bigtable row as follows: +// - row key: subscription name and message ID delimited by #. +// - columns: message bytes written to a single column family "data" with an +// empty-string column qualifier. +// - cell timestamp: the message publish timestamp. +message BigtableConfig { + // Possible states for a Bigtable subscription. + // Note: more states could be added in the future. Please code accordingly. + enum State { + // Default value. This value is unused. + STATE_UNSPECIFIED = 0; + + // The subscription can actively send messages to Bigtable. + ACTIVE = 1; + + // Cannot write to Bigtable because the instance, table, or app profile + // does not exist. + NOT_FOUND = 2; + + // Cannot write to Bigtable because the app profile is not configured for + // single-cluster routing. + APP_PROFILE_MISCONFIGURED = 3; + + // Cannot write to Bigtable because of permission denied errors. + // This can happen if: + // - The Pub/Sub service agent has not been granted the + // [appropriate Bigtable IAM permission + // bigtable.tables.mutateRows]({$universe.dns_names.final_documentation_domain}/bigtable/docs/access-control#permissions) + // - The bigtable.googleapis.com API is not enabled for the project + // ([instructions]({$universe.dns_names.final_documentation_domain}/service-usage/docs/enable-disable)) + PERMISSION_DENIED = 4; + + // Cannot write to Bigtable because of a missing column family ("data") or + // if there is no structured row key for the subscription name + message ID. + SCHEMA_MISMATCH = 5; + + // Cannot write to the destination because enforce_in_transit is set to true + // and the destination locations are not in the allowed regions. + IN_TRANSIT_LOCATION_RESTRICTION = 6; + + // Cannot write to Bigtable because the table is not in the same location as + // where Vertex AI models used in `message_transform`s are deployed. + VERTEX_AI_LOCATION_RESTRICTION = 7; + } + + // Optional. The unique name of the table to write messages to. + // + // Values are of the form + // `projects//instances//tables/`. + string table = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The app profile to use for the Bigtable writes. If not specified, + // the "default" application profile will be used. The app profile must use + // single-cluster routing. + string app_profile_id = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The service account to use to write to Bigtable. The subscription + // creator or updater that specifies this field must have + // `iam.serviceAccounts.actAs` permission on the service account. If not + // specified, the Pub/Sub [service + // agent](https://cloud.google.com/iam/docs/service-agents), + // service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. + string service_account_email = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. When true, write the subscription name, message_id, publish_time, + // attributes, and ordering_key to additional columns in the table under the + // pubsub_metadata column family. The subscription name, message_id, and + // publish_time fields are put in their own columns while all other message + // properties (other than data) are written to a JSON object in the attributes + // column. + bool write_metadata = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. An output-only field that indicates whether or not the + // subscription can receive messages. + State state = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + // Configuration for a Cloud Storage subscription. message CloudStorageConfig { // Configuration for writing message data in text format. From 6a3fd55829f7ccb4a530a16affb50769f366cff6 Mon Sep 17 00:00:00 2001 From: cloud-java-bot Date: Fri, 6 Mar 2026 03:00:04 +0000 Subject: [PATCH 7/8] chore: Update generation configuration at Fri Mar 6 02:59:58 UTC 2026 --- generation_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generation_config.yaml b/generation_config.yaml index 1dc7c7ed1..790655587 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ gapic_generator_version: 2.67.0 -googleapis_commitish: 23ec7b6ee94a2fe364cdb5a212949f1cf37f85ad +googleapis_commitish: 1349486ee18dd6535c4379aa2b4b4665a56f674f libraries_bom_version: 26.77.0 libraries: - api_shortname: pubsub From 8e4e2ffc9f1f609b137a12ae8bc2fbccf76bc567 Mon Sep 17 00:00:00 2001 From: cloud-java-bot Date: Sat, 7 Mar 2026 02:53:36 +0000 Subject: [PATCH 8/8] chore: Update generation configuration at Sat Mar 7 02:53:29 UTC 2026 --- generation_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generation_config.yaml b/generation_config.yaml index 790655587..486fefa6a 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ gapic_generator_version: 2.67.0 -googleapis_commitish: 1349486ee18dd6535c4379aa2b4b4665a56f674f +googleapis_commitish: 8f70147e819ed25cc75c73c4037ce64f9cbb68db libraries_bom_version: 26.77.0 libraries: - api_shortname: pubsub