From 6b133e8277bba25ab8f91d970d8d79e8bdaaa7e7 Mon Sep 17 00:00:00 2001 From: Blake Li Date: Tue, 10 Feb 2026 12:21:32 -0500 Subject: [PATCH 01/38] feat: next release from main branch is 1.148.0 (#2686) --- .github/release-please.yml | 54 ++++++++++++++++++--------------- .github/sync-repo-settings.yaml | 19 ++++++++++++ 2 files changed, 48 insertions(+), 25 deletions(-) diff --git a/.github/release-please.yml b/.github/release-please.yml index 94186875d..dd5ccf112 100644 --- a/.github/release-please.yml +++ b/.github/release-please.yml @@ -2,28 +2,32 @@ bumpMinorPreMajor: true handleGHRelease: true releaseType: java-yoshi branches: - - branch: 1.111.0-sp - releaseType: java-lts - - branch: java7 - - branch: 1.114.x - releaseType: java-backport - - branch: 1.116.x - releaseType: java-backport - - branch: 1.117.x - releaseType: java-backport - - branch: 1.120.x - releaseType: java-backport - - branch: 1.121.x - releaseType: java-backport - - branch: 1.123.x - releaseType: java-backport - - branch: 1.125.x - releaseType: java-backport - - branch: 1.129.x - releaseType: java-backport - - branch: 1.137.x - releaseType: java-backport - - branch: 1.140.x - releaseType: java-backport - - branch: protobuf-4.x-rc - manifest: true + - branch: 1.111.0-sp + releaseType: java-lts + - branch: java7 + - branch: 1.114.x + releaseType: java-backport + - branch: 1.116.x + releaseType: java-backport + - branch: 1.117.x + releaseType: java-backport + - branch: 1.120.x + releaseType: java-backport + - branch: 1.121.x + releaseType: java-backport + - branch: 1.123.x + releaseType: java-backport + - branch: 1.125.x + releaseType: java-backport + - branch: 1.129.x + releaseType: java-backport + - branch: 1.137.x + releaseType: java-backport + - branch: 1.140.x + releaseType: java-backport + - branch: protobuf-4.x-rc + manifest: true + - bumpMinorPreMajor: true + handleGHRelease: true + releaseType: java-backport + branch: 1.147.x diff --git a/.github/sync-repo-settings.yaml b/.github/sync-repo-settings.yaml index 3e4d39bcd..ce658ac8d 100644 --- a/.github/sync-repo-settings.yaml +++ b/.github/sync-repo-settings.yaml @@ -215,6 +215,25 @@ branchProtectionRules: - javadoc - library_generation - unmanaged_dependency_check + - pattern: 1.147.x + isAdminEnforced: true + requiredApprovingReviewCount: 1 + requiresCodeOwnerReviews: true + requiresStrictStatusChecks: false + requiredStatusCheckContexts: + - dependencies (17) + - lint + - clirr + - units (8) + - units (11) + - 'Kokoro - Test: Integration' + - cla/google + - 'Kokoro - Test: Java GraalVM Native Image A' + - 'Kokoro - Test: Java GraalVM Native Image B' + - 'Kokoro - Test: Java GraalVM Native Image C' + - javadoc + - library_generation + - unmanaged_dependency_check permissionRules: - team: yoshi-admins permission: admin From 1a94be982e291c8cbf1ac2ec4aa6a84a4dabd17d Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Wed, 11 Feb 2026 19:56:28 +0000 Subject: [PATCH 02/38] deps: update dependency com.google.cloud:sdk-platform-java-config to v3.56.1 (#2682) Co-authored-by: Jin Seop Kim --- .github/workflows/unmanaged_dependency_check.yaml | 2 +- google-cloud-pubsub-bom/pom.xml | 2 +- pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/unmanaged_dependency_check.yaml b/.github/workflows/unmanaged_dependency_check.yaml index 8dc06537e..f480e1e24 100644 --- a/.github/workflows/unmanaged_dependency_check.yaml +++ b/.github/workflows/unmanaged_dependency_check.yaml @@ -17,6 +17,6 @@ jobs: # repository .kokoro/build.sh - name: Unmanaged dependency check - uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.56.0 + uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.56.1 with: bom-path: google-cloud-pubsub-bom/pom.xml diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index a6f32b5c5..de729c8e7 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -8,7 +8,7 @@ com.google.cloud sdk-platform-java-config - 3.56.0 + 3.56.1 Google Cloud pubsub BOM diff --git a/pom.xml b/pom.xml index 40409ef29..f1f99d24d 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ com.google.cloud sdk-platform-java-config - 3.56.0 + 3.56.1 From 7e154469b5feff3da4811e26c2fbeba2f715f8e8 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Wed, 11 Feb 2026 15:23:37 -0500 Subject: [PATCH 03/38] chore(main): release 1.147.1-SNAPSHOT (#2674) Merge pull request #2674 from googleapis/java-pubsub --- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index de729c8e7..b63882bfd 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.147.0 + 1.147.1-SNAPSHOT pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.147.0 + 1.147.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.129.0 + 1.129.1-SNAPSHOT com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.129.0 + 1.129.1-SNAPSHOT diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index f0bacee92..595f3315c 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.147.0 + 1.147.1-SNAPSHOT jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.147.0 + 1.147.1-SNAPSHOT google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index 89e17a19a..977db1d12 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.129.0 + 1.129.1-SNAPSHOT grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.147.0 + 1.147.1-SNAPSHOT diff --git a/pom.xml b/pom.xml index f1f99d24d..eb75d32af 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.147.0 + 1.147.1-SNAPSHOT Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.129.0 + 1.129.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.129.0 + 1.129.1-SNAPSHOT com.google.cloud google-cloud-pubsub - 1.147.0 + 1.147.1-SNAPSHOT diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index fcddf43a2..c82d96013 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.129.0 + 1.129.1-SNAPSHOT proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.147.0 + 1.147.1-SNAPSHOT diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index cfc6d809b..f6c0b2d99 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.147.0 + 1.147.1-SNAPSHOT diff --git a/versions.txt b/versions.txt index 61c00dc3d..1c8a3555e 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.147.0:1.147.0 -grpc-google-cloud-pubsub-v1:1.129.0:1.129.0 -proto-google-cloud-pubsub-v1:1.129.0:1.129.0 +google-cloud-pubsub:1.147.0:1.147.1-SNAPSHOT +grpc-google-cloud-pubsub-v1:1.129.0:1.129.1-SNAPSHOT +proto-google-cloud-pubsub-v1:1.129.0:1.129.1-SNAPSHOT From 11c3e7b29d9aa9fbc99eedb4940a9e7471e078a4 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Wed, 11 Feb 2026 15:53:14 -0500 Subject: [PATCH 04/38] chore(main): release 1.148.0 (#2688) Merge pull request #2688 from googleapis/java-pubsub --- CHANGELOG.md | 12 ++++++++++++ README.md | 6 +++--- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 9 files changed, 33 insertions(+), 21 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 28e8ac1b9..4d4fa5fbd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,17 @@ # Changelog +## [1.148.0](https://github.com/googleapis/java-pubsub/compare/v1.147.0...v1.148.0) (2026-02-11) + + +### Features + +* Next release from main branch is 1.148.0 ([#2686](https://github.com/googleapis/java-pubsub/issues/2686)) ([6b133e8](https://github.com/googleapis/java-pubsub/commit/6b133e8277bba25ab8f91d970d8d79e8bdaaa7e7)) + + +### Dependencies + +* Update dependency com.google.cloud:sdk-platform-java-config to v3.56.1 ([#2682](https://github.com/googleapis/java-pubsub/issues/2682)) ([1a94be9](https://github.com/googleapis/java-pubsub/commit/1a94be982e291c8cbf1ac2ec4aa6a84a4dabd17d)) + ## [1.147.0](https://github.com/googleapis/java-pubsub/compare/v1.146.0...v1.147.0) (2026-01-27) diff --git a/README.md b/README.md index 7fc4786d2..46a08b0bf 100644 --- a/README.md +++ b/README.md @@ -58,13 +58,13 @@ implementation 'com.google.cloud:google-cloud-pubsub' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-pubsub:1.147.0' +implementation 'com.google.cloud:google-cloud-pubsub:1.148.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.147.0" +libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.148.0" ``` ## Authentication @@ -401,7 +401,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-pubsub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.147.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.148.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index b63882bfd..b48b9bbc6 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.147.1-SNAPSHOT + 1.148.0 pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.147.1-SNAPSHOT + 1.148.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.129.1-SNAPSHOT + 1.130.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.129.1-SNAPSHOT + 1.130.0 diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index 595f3315c..3308cdcd1 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.147.1-SNAPSHOT + 1.148.0 jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.147.1-SNAPSHOT + 1.148.0 google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index 977db1d12..2550d1719 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.129.1-SNAPSHOT + 1.130.0 grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.147.1-SNAPSHOT + 1.148.0 diff --git a/pom.xml b/pom.xml index eb75d32af..55d3cdc6b 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.147.1-SNAPSHOT + 1.148.0 Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.129.1-SNAPSHOT + 1.130.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.129.1-SNAPSHOT + 1.130.0 com.google.cloud google-cloud-pubsub - 1.147.1-SNAPSHOT + 1.148.0 diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index c82d96013..b4fd8af4c 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.129.1-SNAPSHOT + 1.130.0 proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.147.1-SNAPSHOT + 1.148.0 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index f6c0b2d99..d19b2c592 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.147.1-SNAPSHOT + 1.148.0 diff --git a/versions.txt b/versions.txt index 1c8a3555e..4d5a1a8ff 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.147.0:1.147.1-SNAPSHOT -grpc-google-cloud-pubsub-v1:1.129.0:1.129.1-SNAPSHOT -proto-google-cloud-pubsub-v1:1.129.0:1.129.1-SNAPSHOT +google-cloud-pubsub:1.148.0:1.148.0 +grpc-google-cloud-pubsub-v1:1.130.0:1.130.0 +proto-google-cloud-pubsub-v1:1.130.0:1.130.0 From c4e10b95880d0db61b62e89c58d269c755d9e11e Mon Sep 17 00:00:00 2001 From: Samuel Schaub <40373331+SamuelSchaub@users.noreply.github.com> Date: Thu, 12 Feb 2026 14:03:50 -0500 Subject: [PATCH 05/38] feat: add client library debug logging * feat: add keepalive feature to tear down streams in their absence * fix: reset timer each time stream is opened * fix: update timings for server monitor to meet stream close time policy * fix: update initial delay vs period in fake scheduled executor and fix test cases * fix merging errors * feat: add client library debug logging * fix: formatting to previous version * fix: revert subscriber to original state * fix: create Logger objects for each sub-system tag * fix: ran formatter * fix: update LoggingUtil to house all subsytems * fix: typo, renaming, and using throwable on failure for logging util --- .../google/cloud/pubsub/v1/LoggingUtil.java | 146 ++++++++++++++++++ .../cloud/pubsub/v1/MessageDispatcher.java | 93 +++++++++-- .../com/google/cloud/pubsub/v1/Publisher.java | 8 + .../v1/StreamingSubscriberConnection.java | 5 + 4 files changed, 242 insertions(+), 10 deletions(-) create mode 100644 google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/LoggingUtil.java diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/LoggingUtil.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/LoggingUtil.java new file mode 100644 index 000000000..dbc3a5d86 --- /dev/null +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/LoggingUtil.java @@ -0,0 +1,146 @@ +/* + * 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 + * + * http://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. + */ + +package com.google.cloud.pubsub.v1; + +import com.google.pubsub.v1.PubsubMessage; +import java.util.logging.Level; +import java.util.logging.Logger; + +public final class LoggingUtil { + // Instantiate all loggers as static final fields to maintain strong references + + private static final Logger slowAckLogger = Logger.getLogger("slow-ack"); + private static final Logger callbackDeliveryLogger = Logger.getLogger("callback-delivery"); + private static final Logger expiryLogger = Logger.getLogger("expiry"); + private static final Logger callbackExceptionsLogger = Logger.getLogger("callback-exceptions"); + private static final Logger ackBatchLogger = Logger.getLogger("ack-batch"); + private static final Logger subscriberFlowControlLogger = + Logger.getLogger("subscriber-flow-control"); + private static final Logger ackNackLogger = Logger.getLogger("ack-nack"); + private static final Logger publishBatchLogger = Logger.getLogger("publish-batch"); + private static final Logger subscriberStreamsLogger = Logger.getLogger("subscriber-streams"); + + public enum SubSystem { + SLOW_ACK(slowAckLogger), + CALLBACK_DELIVERY(callbackDeliveryLogger), + EXPIRY(expiryLogger), + CALLBACK_EXCEPTIONS(callbackExceptionsLogger), + ACK_BATCH(ackBatchLogger), + SUBSCRIBER_FLOW_CONTROL(subscriberFlowControlLogger), + ACK_NACK(ackNackLogger), + PUBLISH_BATCH(publishBatchLogger), + SUBSCRIBER_STREAMS(subscriberStreamsLogger); + + private final Logger logger; + + SubSystem(Logger logger) { + this.logger = logger; + } + + public Logger getLogger() { + return logger; + } + } + + public LoggingUtil() {} + + private String getSubscriptionLogPrefix( + PubsubMessageWrapper messageWrapper, String ackId, boolean exactlyOnceDeliveryEnabled) { + if (messageWrapper == null || messageWrapper.getPubsubMessage() == null) { + return " Ack ID: " + + ackId + + ", Exactly Once Delivery: " + + exactlyOnceDeliveryEnabled + + " (Message details not available)"; + } + + PubsubMessage message = messageWrapper.getPubsubMessage(); + String messageId = message.getMessageId(); + String orderingKey = message.getOrderingKey(); + + StringBuilder sb = new StringBuilder(); + sb.append("Message ID: ").append(messageId); + sb.append(", Ack ID: ").append(ackId); + if (orderingKey != null && !orderingKey.isEmpty()) { + sb.append(", Ordering Key: ").append(orderingKey); + } + sb.append(", Exactly Once Delivery: ").append(exactlyOnceDeliveryEnabled); + return sb.toString(); + } + + private String getPublisherLogPrefix(PubsubMessageWrapper messageWrapper) { + if (messageWrapper == null || messageWrapper.getPubsubMessage() == null) { + return " (Message details not available)"; + } + + PubsubMessage message = messageWrapper.getPubsubMessage(); + String messageId = message.getMessageId(); + String orderingKey = message.getOrderingKey(); + + StringBuilder sb = new StringBuilder(); + sb.append("Message ID: ").append(messageId); + if (orderingKey != null && !orderingKey.isEmpty()) { + sb.append(", Ordering Key: ").append(orderingKey); + } + return sb.toString(); + } + + public void logSubscriber( + SubSystem subSystem, + Level level, + String msg, + PubsubMessageWrapper messageWrapper, + String ackId, + boolean exactlyOnceDeliveryEnabled) { + Logger logger = subSystem.getLogger(); + if (logger.isLoggable(level)) { + String prefix = getSubscriptionLogPrefix(messageWrapper, ackId, exactlyOnceDeliveryEnabled); + logger.log(level, prefix + " - " + msg); + } + } + + public void logSubscriberWithThrowable( + SubSystem subSystem, + Level level, + String msg, + PubsubMessageWrapper messageWrapper, + String ackId, + boolean exactlyOnceDeliveryEnabled, + Throwable throwable) { + Logger logger = subSystem.getLogger(); + if (logger.isLoggable(level)) { + String prefix = getSubscriptionLogPrefix(messageWrapper, ackId, exactlyOnceDeliveryEnabled); + logger.log(level, prefix + " - " + msg, throwable); + } + } + + public void logPublisher( + SubSystem subSystem, Level level, String msg, PubsubMessageWrapper messageWrapper) { + Logger logger = subSystem.getLogger(); + if (logger.isLoggable(level)) { + String prefix = getPublisherLogPrefix(messageWrapper); + logger.log(level, prefix + " - " + msg); + } + } + + public void logEvent(SubSystem subSystem, Level level, String msg, Object... params) { + Logger logger = subSystem.getLogger(); + if (logger.isLoggable(level)) { + logger.log(level, msg, params); + } + } +} diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java index 5ed36b9cd..f2f7cd2e7 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/MessageDispatcher.java @@ -59,6 +59,7 @@ */ class MessageDispatcher { private static final Logger logger = Logger.getLogger(MessageDispatcher.class.getName()); + private LoggingUtil loggingUtil = new LoggingUtil(); @InternalApi static final double PERCENTILE_FOR_ACK_DEADLINE_UPDATES = 99.9; @InternalApi static final Duration PENDING_ACKS_SEND_DELAY = Duration.ofMillis(100); @@ -112,6 +113,8 @@ class MessageDispatcher { private final SubscriberShutdownSettings subscriberShutdownSettings; private final AtomicBoolean nackImmediatelyShutdownInProgress = new AtomicBoolean(false); + private final double slowAckPercentile = 99.0; + /** Internal representation of a reply to a Pubsub message, to be sent back to the service. */ public enum AckReply { ACK, @@ -157,11 +160,13 @@ private void forget() { @Override public void onFailure(Throwable t) { - logger.log( + loggingUtil.logSubscriberWithThrowable( + LoggingUtil.SubSystem.CALLBACK_EXCEPTIONS, Level.WARNING, - "MessageReceiver failed to process ack ID: " - + this.ackRequestData.getAckId() - + ", the message will be nacked.", + "MessageReceiver exception.", + this.ackRequestData.getMessageWrapper(), + this.ackRequestData.getAckId(), + exactlyOnceDeliveryEnabled.get(), t); this.ackRequestData.setResponse(AckResponse.OTHER, false); pendingNacks.add(this.ackRequestData); @@ -171,6 +176,19 @@ public void onFailure(Throwable t) { @Override public void onSuccess(AckReply reply) { + int ackLatency = + Ints.saturatedCast((long) Math.ceil((clock.millisTime() - receivedTimeMillis) / 1000D)); + if (ackLatency >= ackLatencyDistribution.getPercentile(slowAckPercentile)) { + loggingUtil.logSubscriber( + LoggingUtil.SubSystem.SLOW_ACK, + Level.FINE, + String.format( + "Message ack duration of %d is higher than the p99 ack duration", ackLatency), + this.ackRequestData.getMessageWrapper(), + this.ackRequestData.getAckId(), + exactlyOnceDeliveryEnabled.get()); + } + switch (reply) { case ACK: if (nackImmediatelyShutdownInProgress.get() && exactlyOnceDeliveryEnabled.get()) { @@ -180,15 +198,27 @@ public void onSuccess(AckReply reply) { } else { pendingAcks.add(this.ackRequestData); // Record the latency rounded to the next closest integer. - ackLatencyDistribution.record( - Ints.saturatedCast( - (long) Math.ceil((clock.millisTime() - receivedTimeMillis) / 1000D))); + ackLatencyDistribution.record(ackLatency); tracer.endSubscribeProcessSpan(this.ackRequestData.getMessageWrapper(), "ack"); } + loggingUtil.logSubscriber( + LoggingUtil.SubSystem.ACK_NACK, + Level.FINE, + "Ack called on message.", + this.ackRequestData.getMessageWrapper(), + this.ackRequestData.getAckId(), + exactlyOnceDeliveryEnabled.get()); break; case NACK: pendingNacks.add(this.ackRequestData); tracer.endSubscribeProcessSpan(this.ackRequestData.getMessageWrapper(), "nack"); + loggingUtil.logSubscriber( + LoggingUtil.SubSystem.ACK_NACK, + Level.FINE, + "Nack called on message.", + this.ackRequestData.getMessageWrapper(), + this.ackRequestData.getAckId(), + exactlyOnceDeliveryEnabled.get()); break; default: throw new IllegalArgumentException(String.format("AckReply: %s not supported", reply)); @@ -568,10 +598,32 @@ private void processBatch(List batch) { // shutdown will block on processing of all these messages anyway. tracer.startSubscribeConcurrencyControlSpan(message.messageWrapper()); try { + loggingUtil.logSubscriber( + LoggingUtil.SubSystem.SUBSCRIBER_FLOW_CONTROL, + Level.FINE, + "Flow controller is blocking.", + message.messageWrapper(), + message.messageWrapper().getAckId(), + exactlyOnceDeliveryEnabled.get()); flowController.reserve(1, message.messageWrapper().getPubsubMessage().getSerializedSize()); + loggingUtil.logSubscriber( + LoggingUtil.SubSystem.SUBSCRIBER_FLOW_CONTROL, + Level.FINE, + "Flow controller is done blocking.", + message.messageWrapper(), + message.messageWrapper().getAckId(), + exactlyOnceDeliveryEnabled.get()); tracer.endSubscribeConcurrencyControlSpan(message.messageWrapper()); } catch (FlowControlException unexpectedException) { // This should be a blocking flow controller and never throw an exception. + loggingUtil.logSubscriberWithThrowable( + LoggingUtil.SubSystem.SUBSCRIBER_FLOW_CONTROL, + Level.FINE, + "Flow controller unexpected exception.", + message.messageWrapper(), + message.messageWrapper().getAckId(), + exactlyOnceDeliveryEnabled.get(), + unexpectedException); tracer.setSubscribeConcurrencyControlSpanException( message.messageWrapper(), unexpectedException); throw new IllegalStateException("Flow control unexpected exception", unexpectedException); @@ -619,9 +671,23 @@ public void run() { // Don't nack it either, because we'd be nacking someone else's message. ackHandler.forget(); tracer.setSubscriberSpanExpirationResult(messageWrapper); + loggingUtil.logSubscriber( + LoggingUtil.SubSystem.EXPIRY, + Level.FINE, + "Message expired.", + messageWrapper, + ackHandler.ackRequestData.getAckId(), + exactlyOnceDeliveryEnabled.get()); return; } tracer.startSubscribeProcessSpan(messageWrapper); + loggingUtil.logSubscriber( + LoggingUtil.SubSystem.CALLBACK_DELIVERY, + Level.FINE, + "Message delivered.", + messageWrapper, + ackHandler.ackRequestData.getAckId(), + exactlyOnceDeliveryEnabled.get()); if (shouldSetMessageFuture()) { // This is the message future that is propagated to the user SettableApiFuture messageFuture = @@ -725,7 +791,6 @@ void processOutstandingOperations() { if (!nackRequestDataList.isEmpty()) { modackRequestData.add(new ModackRequestData(0, nackRequestDataList)); } - logger.log(Level.FINER, "Sending {0} nacks", nackRequestDataList.size()); List ackRequestDataReceipts = new ArrayList(); pendingReceipts.drainTo(ackRequestDataReceipts); @@ -735,13 +800,21 @@ void processOutstandingOperations() { receiptModack.setIsReceiptModack(true); modackRequestData.add(receiptModack); } - logger.log(Level.FINER, "Sending {0} receipts", ackRequestDataReceipts.size()); ackProcessor.sendModackOperations(modackRequestData); List ackRequestDataList = new ArrayList(); pendingAcks.drainTo(ackRequestDataList); - logger.log(Level.FINER, "Sending {0} acks", ackRequestDataList.size()); + loggingUtil.logEvent( + LoggingUtil.SubSystem.ACK_BATCH, + Level.FINE, + "Sending {0} ACKs, {1} NACKs, {2} receipts. Exactly Once Delivery: {3}", + new Object[] { + ackRequestDataList.size(), + nackRequestDataList.size(), + ackRequestDataReceipts.size(), + exactlyOnceDeliveryEnabled.get() + }); ackProcessor.sendAckOperations(ackRequestDataList); } diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java index 113cbf932..43012bcfc 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java @@ -94,6 +94,7 @@ */ public class Publisher implements PublisherInterface { private static final Logger logger = Logger.getLogger(Publisher.class.getName()); + private LoggingUtil loggingUtil = new LoggingUtil(); private static final String GZIP_COMPRESSION = "gzip"; @@ -509,6 +510,13 @@ private void publishOutstandingBatch(final OutstandingBatch outstandingBatch) { logger.log(Level.WARNING, "Attempted to publish batch with zero messages."); return; } + + loggingUtil.logPublisher( + LoggingUtil.SubSystem.PUBLISH_BATCH, + Level.FINE, + String.format("Attempting to batch publish %d messages", outstandingBatch.size()), + outstandingBatch.getMessageWrappers().get(0)); + final ApiFutureCallback futureCallback = new ApiFutureCallback() { @Override diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/StreamingSubscriberConnection.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/StreamingSubscriberConnection.java index 2ee077597..24c580b6c 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/StreamingSubscriberConnection.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/StreamingSubscriberConnection.java @@ -77,6 +77,7 @@ final class StreamingSubscriberConnection extends AbstractApiService implements AckProcessor { private static final Logger logger = Logger.getLogger(StreamingSubscriberConnection.class.getName()); + private LoggingUtil loggingUtil = new LoggingUtil(); private static final Duration INITIAL_CHANNEL_RECONNECT_BACKOFF = Duration.ofMillis(100); private static final Duration MAX_CHANNEL_RECONNECT_BACKOFF = Duration.ofSeconds(10); @@ -222,6 +223,8 @@ public boolean getExactlyOnceDeliveryEnabled() { @Override protected void doStart() { logger.config("Starting subscriber."); + loggingUtil.logEvent( + LoggingUtil.SubSystem.SUBSCRIBER_STREAMS, Level.FINE, "Opening stream.", ""); messageDispatcher.start(); initialize(); notifyStarted(); @@ -229,6 +232,8 @@ protected void doStart() { @Override protected void doStop() { + loggingUtil.logEvent( + LoggingUtil.SubSystem.SUBSCRIBER_STREAMS, Level.FINE, "Closing stream.", ""); lock.lock(); try { clientStream.closeSendWithError(Status.CANCELLED.asException()); From c7ecd2b5aac2719ca55a93d6bd5b9afc9aeb5a9c Mon Sep 17 00:00:00 2001 From: Mike Prieto Date: Tue, 17 Feb 2026 11:27:17 -0500 Subject: [PATCH 06/38] fix: Do not use directExecutor() for the publish callback when ordering is enabled (#2693) --- .../src/main/java/com/google/cloud/pubsub/v1/Publisher.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java index 43012bcfc..56c920bcf 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java @@ -66,6 +66,7 @@ import java.util.Map; import java.util.concurrent.Callable; import java.util.concurrent.CountDownLatch; +import java.util.concurrent.Executor; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; @@ -569,6 +570,7 @@ public void onFailure(Throwable t) { }; ApiFuture future; + Executor callbackExecutor = directExecutor(); if (outstandingBatch.orderingKey == null || outstandingBatch.orderingKey.isEmpty()) { future = publishCall(outstandingBatch); } else { @@ -581,8 +583,9 @@ public ApiFuture call() { return publishCall(outstandingBatch); } }); + callbackExecutor = this.executor; } - ApiFutures.addCallback(future, futureCallback, directExecutor()); + ApiFutures.addCallback(future, futureCallback, callbackExecutor); } private final class OutstandingBatch { From f5873061843b08405b0d9e70849bdc37a935697c Mon Sep 17 00:00:00 2001 From: Tomo Suzuki Date: Wed, 18 Feb 2026 16:22:41 -0500 Subject: [PATCH 07/38] chore: replace api-pubsub and yoshi-java with updated names (#2695) b/478003109 --- .github/CODEOWNERS | 24 ++++++++++++------------ .github/sync-repo-settings.yaml | 2 +- .repo-metadata.json | 2 +- generation_config.yaml | 2 +- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 02da5de55..3a6e0dbe4 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -4,23 +4,23 @@ # For syntax help see: # https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners#codeowners-syntax -# The @googleapis/api-pubsub is the default owner for changes in this repo -* @googleapis/cloud-sdk-java-team @googleapis/api-pubsub +# The @googleapis/pubsub-team is the default owner for changes in this repo +* @googleapis/cloud-sdk-java-team @googleapis/pubsub-team # for handwritten libraries, keep codeowner_team in .repo-metadata.json as owner -**/*.java @googleapis/api-pubsub +**/*.java @googleapis/pubsub-team # For generated Java code -proto-*/ @googleapis/cloud-sdk-java-team @googleapis/api-pubsub -grpc-*/ @googleapis/cloud-sdk-java-team @googleapis/api-pubsub +proto-*/ @googleapis/cloud-sdk-java-team @googleapis/pubsub-team +grpc-*/ @googleapis/cloud-sdk-java-team @googleapis/pubsub-team # Generated code pattern in google-cloud-pubsub -**/*Client.java @googleapis/cloud-sdk-java-team @googleapis/api-pubsub -**/*Settings.java @googleapis/cloud-sdk-java-team @googleapis/api-pubsub -**/*ClientHttpJsonTest.java @googleapis/cloud-sdk-java-team @googleapis/api-pubsub -**/*ClientTest.java @googleapis/cloud-sdk-java-team @googleapis/api-pubsub -google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/** @googleapis/cloud-sdk-java-team @googleapis/api-pubsub -google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/package-info.java @googleapis/cloud-sdk-java-team @googleapis/api-pubsub -google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/Mock* @googleapis/cloud-sdk-java-team @googleapis/api-pubsub +**/*Client.java @googleapis/cloud-sdk-java-team @googleapis/pubsub-team +**/*Settings.java @googleapis/cloud-sdk-java-team @googleapis/pubsub-team +**/*ClientHttpJsonTest.java @googleapis/cloud-sdk-java-team @googleapis/pubsub-team +**/*ClientTest.java @googleapis/cloud-sdk-java-team @googleapis/pubsub-team +google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/** @googleapis/cloud-sdk-java-team @googleapis/pubsub-team +google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/package-info.java @googleapis/cloud-sdk-java-team @googleapis/pubsub-team +google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/v1/Mock* @googleapis/cloud-sdk-java-team @googleapis/pubsub-team # The java-samples-reviewers team is the default owner for samples changes samples/**/*.java @googleapis/java-samples-reviewers diff --git a/.github/sync-repo-settings.yaml b/.github/sync-repo-settings.yaml index ce658ac8d..1f09ebd60 100644 --- a/.github/sync-repo-settings.yaml +++ b/.github/sync-repo-settings.yaml @@ -239,5 +239,5 @@ permissionRules: permission: admin - team: yoshi-java-admins permission: admin - - team: yoshi-java + - team: cloud-sdk-java-team permission: push diff --git a/.repo-metadata.json b/.repo-metadata.json index 0c8364b05..31cf00630 100644 --- a/.repo-metadata.json +++ b/.repo-metadata.json @@ -14,7 +14,7 @@ "library_type": "GAPIC_COMBO", "requires_billing": true, "api_reference": "https://cloud.google.com/pubsub/", - "codeowner_team": "@googleapis/api-pubsub", + "codeowner_team": "@googleapis/pubsub-team", "issue_tracker": "https://issuetracker.google.com/savedsearches/559741", "recommended_package": "com.google.cloud.pubsub.v1" } \ No newline at end of file diff --git a/generation_config.yaml b/generation_config.yaml index 31ade0ccf..cba64deff 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -14,7 +14,7 @@ libraries: repo: googleapis/java-pubsub repo_short: java-pubsub distribution_name: com.google.cloud:google-cloud-pubsub - codeowner_team: '@googleapis/api-pubsub' + codeowner_team: '@googleapis/pubsub-team' api_id: pubsub.googleapis.com library_type: GAPIC_COMBO requires_billing: true From 18562b4f13385bc4231beb8a2248ba6a7fa1f469 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 24 Feb 2026 16:03:46 +0000 Subject: [PATCH 08/38] chore(deps): update dependency com.google.cloud:google-cloud-pubsub to v1.148.0 (#2675) --- samples/install-without-bom/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 28ccba7f2..01f474f4c 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -44,7 +44,7 @@ com.google.cloud google-cloud-pubsub - 1.146.0 + 1.148.0 From 2a1ebea9d101cc650e1276e30063f87193eb1f6e Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 24 Feb 2026 16:04:04 +0000 Subject: [PATCH 09/38] deps: update dependency com.google.cloud:google-cloud-storage to v2.63.0 (#2676) --- samples/install-without-bom/pom.xml | 2 +- samples/snapshot/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 01f474f4c..ad751db16 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -91,7 +91,7 @@ com.google.cloud google-cloud-storage - 2.62.0 + 2.63.0 com.google.cloud.opentelemetry diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index d19b2c592..bbce3aaba 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -90,7 +90,7 @@ com.google.cloud google-cloud-storage - 2.62.0 + 2.63.0 com.google.cloud.opentelemetry From 70b781c51dc82de76ff1417c1c0ab4b012cb7cc0 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 24 Feb 2026 16:04:21 +0000 Subject: [PATCH 10/38] deps: update dependency com.google.protobuf:protobuf-java-util to v4.33.5 (#2678) --- samples/install-without-bom/pom.xml | 2 +- samples/snapshot/pom.xml | 2 +- samples/snippets/pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index ad751db16..637f340cd 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -75,7 +75,7 @@ com.google.protobuf protobuf-java-util - 4.33.4 + 4.33.5 com.google.cloud diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index bbce3aaba..0208724b3 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -61,7 +61,7 @@ com.google.protobuf protobuf-java-util - 4.33.4 + 4.33.5 diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index 7c5e65b08..e1366e700 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -85,7 +85,7 @@ com.google.protobuf protobuf-java-util - 4.33.4 + 4.33.5 From 4b18e88c2620b82d013c5378f9132d56fc17704f Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 24 Feb 2026 16:04:34 +0000 Subject: [PATCH 11/38] chore(deps): update dependency com.google.cloud:libraries-bom to v26.76.0 (#2679) --- samples/snippets/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index e1366e700..e3569da1c 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -45,7 +45,7 @@ com.google.cloud libraries-bom - 26.74.0 + 26.76.0 pom import From e291b0d98d576f0beceb49af002fc501ad31683f Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 24 Feb 2026 16:04:49 +0000 Subject: [PATCH 12/38] deps: update dependency com.google.cloud:google-cloud-core to v2.65.0 (#2681) --- samples/install-without-bom/pom.xml | 2 +- samples/snapshot/pom.xml | 2 +- samples/snippets/pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 637f340cd..72593243d 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -80,7 +80,7 @@ com.google.cloud google-cloud-core - 2.64.0 + 2.65.0 tests diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 0208724b3..7b6329efc 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -79,7 +79,7 @@ com.google.cloud google-cloud-core - 2.64.0 + 2.65.0 tests diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index e3569da1c..42f69ff4a 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -103,7 +103,7 @@ com.google.cloud google-cloud-core - 2.64.0 + 2.65.0 tests From 9d5fa5b04c633879567b2025bc045ef2e6b48b59 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 24 Feb 2026 16:05:08 +0000 Subject: [PATCH 13/38] deps: update googleapis/sdk-platform-java action to v2.67.0 (#2683) --- .github/workflows/hermetic_library_generation.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/hermetic_library_generation.yaml b/.github/workflows/hermetic_library_generation.yaml index d1a4b69f7..ef71d4f6a 100644 --- a/.github/workflows/hermetic_library_generation.yaml +++ b/.github/workflows/hermetic_library_generation.yaml @@ -37,7 +37,7 @@ jobs: with: fetch-depth: 0 token: ${{ secrets.CLOUD_JAVA_BOT_TOKEN }} - - uses: googleapis/sdk-platform-java/.github/scripts@v2.66.0 + - uses: googleapis/sdk-platform-java/.github/scripts@v2.67.0 if: env.SHOULD_RUN == 'true' with: base_ref: ${{ github.base_ref }} From dd02393c586de6cfe7d91d9579a490533876c7f1 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 24 Feb 2026 16:05:31 +0000 Subject: [PATCH 14/38] deps: update dependency com.google.cloud:sdk-platform-java-config to v3.57.0 (#2696) --- .github/workflows/unmanaged_dependency_check.yaml | 2 +- google-cloud-pubsub-bom/pom.xml | 2 +- pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/unmanaged_dependency_check.yaml b/.github/workflows/unmanaged_dependency_check.yaml index f480e1e24..87add3353 100644 --- a/.github/workflows/unmanaged_dependency_check.yaml +++ b/.github/workflows/unmanaged_dependency_check.yaml @@ -17,6 +17,6 @@ jobs: # repository .kokoro/build.sh - name: Unmanaged dependency check - uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.56.1 + uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.57.0 with: bom-path: google-cloud-pubsub-bom/pom.xml diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index b48b9bbc6..bf8eeede2 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -8,7 +8,7 @@ com.google.cloud sdk-platform-java-config - 3.56.1 + 3.57.0 Google Cloud pubsub BOM diff --git a/pom.xml b/pom.xml index 55d3cdc6b..f755e02f3 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ com.google.cloud sdk-platform-java-config - 3.56.1 + 3.57.0 From bed94648ceede888a244d21082b7e403fbae0aaa Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 24 Feb 2026 16:05:44 +0000 Subject: [PATCH 15/38] deps: update dependency com.google.cloud:google-cloud-bigquery to v2.59.0 (#2690) --- samples/install-without-bom/pom.xml | 2 +- samples/snapshot/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 72593243d..f5f4ee888 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -86,7 +86,7 @@ com.google.cloud google-cloud-bigquery - 2.58.0 + 2.59.0 com.google.cloud diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 7b6329efc..770851b54 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -85,7 +85,7 @@ com.google.cloud google-cloud-bigquery - 2.58.0 + 2.59.0 com.google.cloud From f95abb7071d14a5235155af7b4cd52ea0457bc27 Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Thu, 26 Feb 2026 14:24:10 -0500 Subject: [PATCH 16/38] chore: Add LoggingUtil.java to be preserved (#2698) * chore: Add LoggingUtil.java to be preserved * chore: generate libraries at Thu Feb 26 19:00:55 UTC 2026 --------- Co-authored-by: cloud-java-bot --- .github/.OwlBot-hermetic.yaml | 1 + README.md | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/.OwlBot-hermetic.yaml b/.github/.OwlBot-hermetic.yaml index d426d10ea..85ecbdeb5 100644 --- a/.github/.OwlBot-hermetic.yaml +++ b/.github/.OwlBot-hermetic.yaml @@ -68,6 +68,7 @@ deep-preserve-regex: - "/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriberShutdownSettings.java" - "/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/SubscriberStats.java" - "/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Waiter.java" +- "/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/LoggingUtil.java" deep-copy-regex: - source: "/google/pubsub/(v.*)/.*-java/proto-google-.*/src" diff --git a/README.md b/README.md index 46a08b0bf..0908ab37b 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ If you are using Maven with [BOM][libraries-bom], add this to your pom.xml file: com.google.cloud libraries-bom - 26.74.0 + 26.76.0 pom import @@ -43,7 +43,7 @@ If you are using Maven without the BOM, add this to your dependencies: com.google.cloud google-cloud-pubsub - 1.146.0 + 1.148.0 ``` From c5ad5cee83605a4e2a9ddf07913aec2fdd522fef Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 26 Feb 2026 15:03:12 -0500 Subject: [PATCH 17/38] chore(main): release 1.148.1-SNAPSHOT (#2689) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index bf8eeede2..fc5b77f23 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.148.0 + 1.148.1-SNAPSHOT pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.148.0 + 1.148.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.130.0 + 1.130.1-SNAPSHOT com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.130.0 + 1.130.1-SNAPSHOT diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index 3308cdcd1..188f542af 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.148.0 + 1.148.1-SNAPSHOT jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.148.0 + 1.148.1-SNAPSHOT google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index 2550d1719..962a25751 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.130.0 + 1.130.1-SNAPSHOT grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.148.0 + 1.148.1-SNAPSHOT diff --git a/pom.xml b/pom.xml index f755e02f3..484406659 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.148.0 + 1.148.1-SNAPSHOT Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.130.0 + 1.130.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.130.0 + 1.130.1-SNAPSHOT com.google.cloud google-cloud-pubsub - 1.148.0 + 1.148.1-SNAPSHOT diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index b4fd8af4c..7814e2d2f 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.130.0 + 1.130.1-SNAPSHOT proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.148.0 + 1.148.1-SNAPSHOT diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 770851b54..08e9e6fdf 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.148.0 + 1.148.1-SNAPSHOT diff --git a/versions.txt b/versions.txt index 4d5a1a8ff..efe90b7fb 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.148.0:1.148.0 -grpc-google-cloud-pubsub-v1:1.130.0:1.130.0 -proto-google-cloud-pubsub-v1:1.130.0:1.130.0 +google-cloud-pubsub:1.148.0:1.148.1-SNAPSHOT +grpc-google-cloud-pubsub-v1:1.130.0:1.130.1-SNAPSHOT +proto-google-cloud-pubsub-v1:1.130.0:1.130.1-SNAPSHOT From c85f4eaaf2b28e7c0c544d5a4a92a197112e7723 Mon Sep 17 00:00:00 2001 From: cloud-java-bot <122572305+cloud-java-bot@users.noreply.github.com> Date: Thu, 26 Feb 2026 15:58:36 -0500 Subject: [PATCH 18/38] chore: Update generation configuration at Thu Feb 26 20:11:10 UTC 2026 (#2671) * chore: Update generation configuration at Tue Jan 27 02:48:00 UTC 2026 * chore: Update generation configuration at Wed Jan 28 02:45:19 UTC 2026 * chore: Update generation configuration at Thu Jan 29 02:58:14 UTC 2026 * chore: Update generation configuration at Fri Jan 30 02:59:03 UTC 2026 * chore: Update generation configuration at Sat Jan 31 02:55:08 UTC 2026 * chore: generate libraries at Sat Jan 31 02:55:36 UTC 2026 * chore: Update generation configuration at Sun Feb 1 03:05:25 UTC 2026 * chore: Update generation configuration at Tue Feb 3 03:02:24 UTC 2026 * chore: Update generation configuration at Wed Feb 4 03:00:02 UTC 2026 * chore: Update generation configuration at Thu Feb 5 03:01:27 UTC 2026 * chore: generate libraries at Thu Feb 5 03:01:57 UTC 2026 * chore: Update generation configuration at Fri Feb 6 03:00:39 UTC 2026 * chore: Update generation configuration at Sat Feb 7 02:57:26 UTC 2026 * chore: Update generation configuration at Tue Feb 10 03:05:35 UTC 2026 * chore: Update generation configuration at Wed Feb 11 03:05:47 UTC 2026 * chore: Update generation configuration at Thu Feb 12 03:05:23 UTC 2026 * chore: Update generation configuration at Fri Feb 13 03:05:24 UTC 2026 * chore: generate libraries at Fri Feb 13 03:05:55 UTC 2026 * chore: Update generation configuration at Sat Feb 14 02:59:26 UTC 2026 * chore: Update generation configuration at Sun Feb 15 03:05:15 UTC 2026 * chore: generate libraries at Sun Feb 15 03:05:44 UTC 2026 * chore: Update generation configuration at Tue Feb 17 03:02:46 UTC 2026 * chore: Update generation configuration at Wed Feb 18 03:03:55 UTC 2026 * chore: Update generation configuration at Thu Feb 19 03:03:15 UTC 2026 * chore: Update generation configuration at Fri Feb 20 03:01:16 UTC 2026 * chore: generate libraries at Fri Feb 20 03:01:49 UTC 2026 * chore: Update generation configuration at Sat Feb 21 02:56:46 UTC 2026 * chore: Update generation configuration at Tue Feb 24 03:03:00 UTC 2026 * chore: Update generation configuration at Wed Feb 25 03:03:27 UTC 2026 * chore: generate libraries at Wed Feb 25 03:03:54 UTC 2026 * chore: Update generation configuration at Thu Feb 26 03:01:04 UTC 2026 * chore: Update generation configuration at Thu Feb 26 20:11:10 UTC 2026 * chore: Add deleted LoggingUtil class * chore: Fix lint issues --------- Co-authored-by: Lawrence Qiu --- .kokoro/presubmit/graalvm-native-a.cfg | 2 +- .kokoro/presubmit/graalvm-native-b.cfg | 2 +- .kokoro/presubmit/graalvm-native-c.cfg | 2 +- README.md | 2 +- generation_config.yaml | 6 +++--- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.kokoro/presubmit/graalvm-native-a.cfg b/.kokoro/presubmit/graalvm-native-a.cfg index af4115f37..b113cf7c7 100644 --- a/.kokoro/presubmit/graalvm-native-a.cfg +++ b/.kokoro/presubmit/graalvm-native-a.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.56.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.57.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-b.cfg b/.kokoro/presubmit/graalvm-native-b.cfg index 33056bc06..1f91aa678 100644 --- a/.kokoro/presubmit/graalvm-native-b.cfg +++ b/.kokoro/presubmit/graalvm-native-b.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.56.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.57.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-c.cfg b/.kokoro/presubmit/graalvm-native-c.cfg index 8a6c25f49..53a7b7d63 100644 --- a/.kokoro/presubmit/graalvm-native-c.cfg +++ b/.kokoro/presubmit/graalvm-native-c.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.56.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.57.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/README.md b/README.md index 0908ab37b..2339aa3d7 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.74.0') +implementation platform('com.google.cloud:libraries-bom:26.76.0') implementation 'com.google.cloud:google-cloud-pubsub' ``` diff --git a/generation_config.yaml b/generation_config.yaml index cba64deff..86168938d 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,6 +1,6 @@ -gapic_generator_version: 2.66.0 -googleapis_commitish: 2ac88973cbafba24e4fb6f31038e0c76174ae704 -libraries_bom_version: 26.74.0 +gapic_generator_version: 2.67.0 +googleapis_commitish: 9637e50bc0ff6a5e8944980aaf6a2b7f34a90910 +libraries_bom_version: 26.76.0 libraries: - api_shortname: pubsub name_pretty: Cloud Pub/Sub From d263eeff08e191f98d32a80a8dd153400428ef09 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 26 Feb 2026 17:53:34 -0500 Subject: [PATCH 19/38] chore(main): release 1.149.0 (#2699) * chore(main): release 1.149.0 * chore: generate libraries at Thu Feb 26 20:59:24 UTC 2026 --------- Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: cloud-java-bot --- CHANGELOG.md | 23 +++++++++++++++++++++++ README.md | 6 +++--- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 9 files changed, 44 insertions(+), 21 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d4fa5fbd..7d86617e6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,28 @@ # Changelog +## [1.149.0](https://github.com/googleapis/java-pubsub/compare/v1.148.0...v1.149.0) (2026-02-26) + + +### Features + +* Add client library debug logging ([c4e10b9](https://github.com/googleapis/java-pubsub/commit/c4e10b95880d0db61b62e89c58d269c755d9e11e)) + + +### Bug Fixes + +* **deps:** Update the Java code generator (gapic-generator-java) to 2.67.0 ([c85f4ea](https://github.com/googleapis/java-pubsub/commit/c85f4eaaf2b28e7c0c544d5a4a92a197112e7723)) +* Do not use directExecutor() for the publish callback when ordering is enabled ([#2693](https://github.com/googleapis/java-pubsub/issues/2693)) ([c7ecd2b](https://github.com/googleapis/java-pubsub/commit/c7ecd2b5aac2719ca55a93d6bd5b9afc9aeb5a9c)) + + +### Dependencies + +* Update dependency com.google.cloud:google-cloud-bigquery to v2.59.0 ([#2690](https://github.com/googleapis/java-pubsub/issues/2690)) ([bed9464](https://github.com/googleapis/java-pubsub/commit/bed94648ceede888a244d21082b7e403fbae0aaa)) +* Update dependency com.google.cloud:google-cloud-core to v2.65.0 ([#2681](https://github.com/googleapis/java-pubsub/issues/2681)) ([e291b0d](https://github.com/googleapis/java-pubsub/commit/e291b0d98d576f0beceb49af002fc501ad31683f)) +* Update dependency com.google.cloud:google-cloud-storage to v2.63.0 ([#2676](https://github.com/googleapis/java-pubsub/issues/2676)) ([2a1ebea](https://github.com/googleapis/java-pubsub/commit/2a1ebea9d101cc650e1276e30063f87193eb1f6e)) +* Update dependency com.google.cloud:sdk-platform-java-config to v3.57.0 ([#2696](https://github.com/googleapis/java-pubsub/issues/2696)) ([dd02393](https://github.com/googleapis/java-pubsub/commit/dd02393c586de6cfe7d91d9579a490533876c7f1)) +* Update dependency com.google.protobuf:protobuf-java-util to v4.33.5 ([#2678](https://github.com/googleapis/java-pubsub/issues/2678)) ([70b781c](https://github.com/googleapis/java-pubsub/commit/70b781c51dc82de76ff1417c1c0ab4b012cb7cc0)) +* Update googleapis/sdk-platform-java action to v2.67.0 ([#2683](https://github.com/googleapis/java-pubsub/issues/2683)) ([9d5fa5b](https://github.com/googleapis/java-pubsub/commit/9d5fa5b04c633879567b2025bc045ef2e6b48b59)) + ## [1.148.0](https://github.com/googleapis/java-pubsub/compare/v1.147.0...v1.148.0) (2026-02-11) diff --git a/README.md b/README.md index 2339aa3d7..3756b7602 100644 --- a/README.md +++ b/README.md @@ -58,13 +58,13 @@ implementation 'com.google.cloud:google-cloud-pubsub' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-pubsub:1.148.0' +implementation 'com.google.cloud:google-cloud-pubsub:1.149.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.148.0" +libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.149.0" ``` ## Authentication @@ -401,7 +401,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-pubsub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.148.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.149.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index fc5b77f23..1b9fae9f0 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.148.1-SNAPSHOT + 1.149.0 pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.148.1-SNAPSHOT + 1.149.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.130.1-SNAPSHOT + 1.131.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.130.1-SNAPSHOT + 1.131.0 diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index 188f542af..d6b1e963b 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.148.1-SNAPSHOT + 1.149.0 jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.148.1-SNAPSHOT + 1.149.0 google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index 962a25751..f9e5777ee 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.130.1-SNAPSHOT + 1.131.0 grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.148.1-SNAPSHOT + 1.149.0 diff --git a/pom.xml b/pom.xml index 484406659..6929c5e65 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.148.1-SNAPSHOT + 1.149.0 Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.130.1-SNAPSHOT + 1.131.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.130.1-SNAPSHOT + 1.131.0 com.google.cloud google-cloud-pubsub - 1.148.1-SNAPSHOT + 1.149.0 diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index 7814e2d2f..ecbb177ae 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.130.1-SNAPSHOT + 1.131.0 proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.148.1-SNAPSHOT + 1.149.0 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 08e9e6fdf..b5fd7b23a 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.148.1-SNAPSHOT + 1.149.0 diff --git a/versions.txt b/versions.txt index efe90b7fb..69040dab2 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.148.0:1.148.1-SNAPSHOT -grpc-google-cloud-pubsub-v1:1.130.0:1.130.1-SNAPSHOT -proto-google-cloud-pubsub-v1:1.130.0:1.130.1-SNAPSHOT +google-cloud-pubsub:1.149.0:1.149.0 +grpc-google-cloud-pubsub-v1:1.131.0:1.131.0 +proto-google-cloud-pubsub-v1:1.131.0:1.131.0 From 39378352cae559874f3e16f52d34e55eeadaec9c Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Mon, 16 Mar 2026 12:58:03 -0700 Subject: [PATCH 20/38] chore(main): release 1.149.1-SNAPSHOT (#2700) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index 1b9fae9f0..02df40a40 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.149.0 + 1.149.1-SNAPSHOT pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.149.0 + 1.149.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.131.0 + 1.131.1-SNAPSHOT com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.131.0 + 1.131.1-SNAPSHOT diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index d6b1e963b..c7914ddef 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.149.0 + 1.149.1-SNAPSHOT jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.149.0 + 1.149.1-SNAPSHOT google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index f9e5777ee..aac991b79 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.131.0 + 1.131.1-SNAPSHOT grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.149.0 + 1.149.1-SNAPSHOT diff --git a/pom.xml b/pom.xml index 6929c5e65..706b5ca7f 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.149.0 + 1.149.1-SNAPSHOT Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.131.0 + 1.131.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.131.0 + 1.131.1-SNAPSHOT com.google.cloud google-cloud-pubsub - 1.149.0 + 1.149.1-SNAPSHOT diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index ecbb177ae..797014929 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.131.0 + 1.131.1-SNAPSHOT proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.149.0 + 1.149.1-SNAPSHOT diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index b5fd7b23a..b96ea4c33 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.149.0 + 1.149.1-SNAPSHOT diff --git a/versions.txt b/versions.txt index 69040dab2..56826c969 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.149.0:1.149.0 -grpc-google-cloud-pubsub-v1:1.131.0:1.131.0 -proto-google-cloud-pubsub-v1:1.131.0:1.131.0 +google-cloud-pubsub:1.149.0:1.149.1-SNAPSHOT +grpc-google-cloud-pubsub-v1:1.131.0:1.131.1-SNAPSHOT +proto-google-cloud-pubsub-v1:1.131.0:1.131.1-SNAPSHOT From e82a6ff52154f3acaaf8195a90e2966666353609 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Fri, 20 Mar 2026 21:11:21 +0000 Subject: [PATCH 21/38] deps: update dependency com.google.cloud:sdk-platform-java-config to v3.58.0 (#2709) --- .github/workflows/unmanaged_dependency_check.yaml | 2 +- google-cloud-pubsub-bom/pom.xml | 2 +- pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/unmanaged_dependency_check.yaml b/.github/workflows/unmanaged_dependency_check.yaml index 87add3353..8208170cc 100644 --- a/.github/workflows/unmanaged_dependency_check.yaml +++ b/.github/workflows/unmanaged_dependency_check.yaml @@ -17,6 +17,6 @@ jobs: # repository .kokoro/build.sh - name: Unmanaged dependency check - uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.57.0 + uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.58.0 with: bom-path: google-cloud-pubsub-bom/pom.xml diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index 02df40a40..0e7f09f74 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -8,7 +8,7 @@ com.google.cloud sdk-platform-java-config - 3.57.0 + 3.58.0 Google Cloud pubsub BOM diff --git a/pom.xml b/pom.xml index 706b5ca7f..5a46cddd4 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ com.google.cloud sdk-platform-java-config - 3.57.0 + 3.58.0 From f69de7ee2cb5b96adbf3fc5b11e1f8a3bbbd0bee Mon Sep 17 00:00:00 2001 From: cloud-java-bot <122572305+cloud-java-bot@users.noreply.github.com> Date: Fri, 20 Mar 2026 17:30:54 -0400 Subject: [PATCH 22/38] chore: Update generation configuration at Fri Mar 20 03:01:07 UTC 2026 (#2703) * chore: Update generation configuration at Fri Feb 27 03:00:12 UTC 2026 * chore: Update generation configuration at Sat Feb 28 02:50:18 UTC 2026 * chore: Update generation configuration at Tue Mar 3 03:03:04 UTC 2026 * chore: Update generation configuration at Wed Mar 4 02:58:16 UTC 2026 * chore: Update generation configuration at Thu Mar 5 03:00:09 UTC 2026 * chore: generate libraries at Thu Mar 5 03:00:45 UTC 2026 * chore: Update generation configuration at Fri Mar 6 02:59:58 UTC 2026 * chore: Update generation configuration at Sat Mar 7 02:53:29 UTC 2026 * chore: Update generation configuration at Tue Mar 10 02:58:26 UTC 2026 * chore: Update generation configuration at Wed Mar 11 02:57:53 UTC 2026 * chore: Update generation configuration at Thu Mar 12 03:01:35 UTC 2026 * chore: Update generation configuration at Fri Mar 13 02:59:40 UTC 2026 * chore: Update generation configuration at Sat Mar 14 02:58:26 UTC 2026 * chore: generate libraries at Sat Mar 14 02:58:53 UTC 2026 * chore: Update generation configuration at Tue Mar 17 03:02:03 UTC 2026 * chore: Update generation configuration at Wed Mar 18 03:05:29 UTC 2026 * chore: generate libraries at Wed Mar 18 03:05:56 UTC 2026 * chore: Update generation configuration at Thu Mar 19 03:05:36 UTC 2026 * chore: Update generation configuration at Fri Mar 20 03:01:07 UTC 2026 --------- Co-authored-by: Lawrence Qiu --- .../hermetic_library_generation.yaml | 2 +- .kokoro/presubmit/graalvm-native-a.cfg | 2 +- .kokoro/presubmit/graalvm-native-b.cfg | 2 +- .kokoro/presubmit/graalvm-native-c.cfg | 2 +- README.md | 2 +- generation_config.yaml | 6 +- .../pubsub/v1/SubscriptionAdminClient.java | 2 + .../pubsub/v1/stub/PublisherStubSettings.java | 10 + .../v1/stub/SchemaServiceStubSettings.java | 10 + .../v1/stub/SubscriberStubSettings.java | 10 + .../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 + 21 files changed, 2744 insertions(+), 354 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/.github/workflows/hermetic_library_generation.yaml b/.github/workflows/hermetic_library_generation.yaml index ef71d4f6a..1b1f157b2 100644 --- a/.github/workflows/hermetic_library_generation.yaml +++ b/.github/workflows/hermetic_library_generation.yaml @@ -37,7 +37,7 @@ jobs: with: fetch-depth: 0 token: ${{ secrets.CLOUD_JAVA_BOT_TOKEN }} - - uses: googleapis/sdk-platform-java/.github/scripts@v2.67.0 + - uses: googleapis/sdk-platform-java/.github/scripts@v2.68.0 if: env.SHOULD_RUN == 'true' with: base_ref: ${{ github.base_ref }} diff --git a/.kokoro/presubmit/graalvm-native-a.cfg b/.kokoro/presubmit/graalvm-native-a.cfg index b113cf7c7..de4ac9dbf 100644 --- a/.kokoro/presubmit/graalvm-native-a.cfg +++ b/.kokoro/presubmit/graalvm-native-a.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.57.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.58.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-b.cfg b/.kokoro/presubmit/graalvm-native-b.cfg index 1f91aa678..d8ae3b322 100644 --- a/.kokoro/presubmit/graalvm-native-b.cfg +++ b/.kokoro/presubmit/graalvm-native-b.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.57.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.58.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-c.cfg b/.kokoro/presubmit/graalvm-native-c.cfg index 53a7b7d63..0e9d1203a 100644 --- a/.kokoro/presubmit/graalvm-native-c.cfg +++ b/.kokoro/presubmit/graalvm-native-c.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.57.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.58.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/README.md b/README.md index 3756b7602..b12fbeaac 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.78.0') implementation 'com.google.cloud:google-cloud-pubsub' ``` diff --git a/generation_config.yaml b/generation_config.yaml index 86168938d..5da7557e5 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,6 +1,6 @@ -gapic_generator_version: 2.67.0 -googleapis_commitish: 9637e50bc0ff6a5e8944980aaf6a2b7f34a90910 -libraries_bom_version: 26.76.0 +gapic_generator_version: 2.68.0 +googleapis_commitish: c063f49852ce7fc08c722c87f3a6f676209985a2 +libraries_bom_version: 26.78.0 libraries: - api_shortname: pubsub name_pretty: Cloud Pub/Sub 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/java/com/google/cloud/pubsub/v1/stub/PublisherStubSettings.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/PublisherStubSettings.java index f8f9d766a..ed148fe35 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/PublisherStubSettings.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/PublisherStubSettings.java @@ -45,6 +45,7 @@ import com.google.api.gax.rpc.BatchingCallSettings; import com.google.api.gax.rpc.BatchingDescriptor; import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.LibraryMetadata; import com.google.api.gax.rpc.PageContext; import com.google.api.gax.rpc.PagedCallSettings; import com.google.api.gax.rpc.PagedListDescriptor; @@ -135,6 +136,7 @@ * retries. */ @Generated("by gapic-generator-java") +@SuppressWarnings("CanonicalDuration") public class PublisherStubSettings extends StubSettings { /** The default scopes of the service. */ private static final ImmutableList DEFAULT_SERVICE_SCOPES = @@ -595,6 +597,14 @@ protected PublisherStubSettings(Builder settingsBuilder) throws IOException { testIamPermissionsSettings = settingsBuilder.testIamPermissionsSettings().build(); } + @Override + protected LibraryMetadata getLibraryMetadata() { + return LibraryMetadata.newBuilder() + .setArtifactName("com.google.cloud:google-cloud-pubsub") + .setRepository("googleapis/java-pubsub") + .build(); + } + /** Builder for PublisherStubSettings. */ public static class Builder extends StubSettings.Builder { private final ImmutableList> unaryMethodSettingsBuilders; diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SchemaServiceStubSettings.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SchemaServiceStubSettings.java index 3f728307c..1509bd98e 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SchemaServiceStubSettings.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SchemaServiceStubSettings.java @@ -36,6 +36,7 @@ import com.google.api.gax.rpc.ApiCallContext; import com.google.api.gax.rpc.ApiClientHeaderProvider; import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.LibraryMetadata; import com.google.api.gax.rpc.PageContext; import com.google.api.gax.rpc.PagedCallSettings; import com.google.api.gax.rpc.PagedListDescriptor; @@ -126,6 +127,7 @@ * retries. */ @Generated("by gapic-generator-java") +@SuppressWarnings("CanonicalDuration") public class SchemaServiceStubSettings extends StubSettings { /** The default scopes of the service. */ private static final ImmutableList DEFAULT_SERVICE_SCOPES = @@ -460,6 +462,14 @@ protected SchemaServiceStubSettings(Builder settingsBuilder) throws IOException testIamPermissionsSettings = settingsBuilder.testIamPermissionsSettings().build(); } + @Override + protected LibraryMetadata getLibraryMetadata() { + return LibraryMetadata.newBuilder() + .setArtifactName("com.google.cloud:google-cloud-pubsub") + .setRepository("googleapis/java-pubsub") + .build(); + } + /** Builder for SchemaServiceStubSettings. */ public static class Builder extends StubSettings.Builder { private final ImmutableList> unaryMethodSettingsBuilders; diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SubscriberStubSettings.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SubscriberStubSettings.java index e3489bb58..82446684a 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SubscriberStubSettings.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SubscriberStubSettings.java @@ -36,6 +36,7 @@ import com.google.api.gax.rpc.ApiCallContext; import com.google.api.gax.rpc.ApiClientHeaderProvider; import com.google.api.gax.rpc.ClientContext; +import com.google.api.gax.rpc.LibraryMetadata; import com.google.api.gax.rpc.PageContext; import com.google.api.gax.rpc.PagedCallSettings; import com.google.api.gax.rpc.PagedListDescriptor; @@ -134,6 +135,7 @@ * retries. */ @Generated("by gapic-generator-java") +@SuppressWarnings("CanonicalDuration") public class SubscriberStubSettings extends StubSettings { /** The default scopes of the service. */ private static final ImmutableList DEFAULT_SERVICE_SCOPES = @@ -510,6 +512,14 @@ protected SubscriberStubSettings(Builder settingsBuilder) throws IOException { testIamPermissionsSettings = settingsBuilder.testIamPermissionsSettings().build(); } + @Override + protected LibraryMetadata getLibraryMetadata() { + return LibraryMetadata.newBuilder() + .setArtifactName("com.google.cloud:google-cloud-pubsub") + .setRepository("googleapis/java-pubsub") + .build(); + } + /** Builder for SubscriberStubSettings. */ public static class Builder extends StubSettings.Builder { private final ImmutableList> unaryMethodSettingsBuilders; 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 48e8798e71587d41f1ad05a9e0cfad024154e866 Mon Sep 17 00:00:00 2001 From: cloud-java-bot <122572305+cloud-java-bot@users.noreply.github.com> Date: Mon, 23 Mar 2026 11:29:24 -0400 Subject: [PATCH 23/38] chore: Update generation configuration at Sun Mar 22 03:05:48 UTC 2026 (#2711) * chore: Update generation configuration at Sat Mar 21 02:56:31 UTC 2026 * chore: Update generation configuration at Sun Mar 22 03:05:48 UTC 2026 --- generation_config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generation_config.yaml b/generation_config.yaml index 5da7557e5..454916e8f 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,5 +1,5 @@ gapic_generator_version: 2.68.0 -googleapis_commitish: c063f49852ce7fc08c722c87f3a6f676209985a2 +googleapis_commitish: 758d8244a84065ea6b0dfacff3d3e9284983390b libraries_bom_version: 26.78.0 libraries: - api_shortname: pubsub From 336726c7bcd3f95069b66910ab7a1d2d4619ba4d Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Mon, 23 Mar 2026 16:10:52 -0400 Subject: [PATCH 24/38] chore(main): release 1.150.0 (#2710) * chore(main): release 1.150.0 * chore: generate libraries at Mon Mar 23 15:30:22 UTC 2026 --------- Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: cloud-java-bot --- CHANGELOG.md | 17 +++++++++++++++++ README.md | 6 +++--- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 9 files changed, 38 insertions(+), 21 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d86617e6..81dfd9414 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,22 @@ # Changelog +## [1.150.0](https://github.com/googleapis/java-pubsub/compare/v1.149.0...v1.150.0) (2026-03-23) + + +### Features + +* Add BigtableConfig type ([f69de7e](https://github.com/googleapis/java-pubsub/commit/f69de7ee2cb5b96adbf3fc5b11e1f8a3bbbd0bee)) + + +### Bug Fixes + +* **deps:** Update the Java code generator (gapic-generator-java) to 2.68.0 ([f69de7e](https://github.com/googleapis/java-pubsub/commit/f69de7ee2cb5b96adbf3fc5b11e1f8a3bbbd0bee)) + + +### Dependencies + +* Update dependency com.google.cloud:sdk-platform-java-config to v3.58.0 ([#2709](https://github.com/googleapis/java-pubsub/issues/2709)) ([e82a6ff](https://github.com/googleapis/java-pubsub/commit/e82a6ff52154f3acaaf8195a90e2966666353609)) + ## [1.149.0](https://github.com/googleapis/java-pubsub/compare/v1.148.0...v1.149.0) (2026-02-26) diff --git a/README.md b/README.md index b12fbeaac..9c5387318 100644 --- a/README.md +++ b/README.md @@ -58,13 +58,13 @@ implementation 'com.google.cloud:google-cloud-pubsub' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-pubsub:1.149.0' +implementation 'com.google.cloud:google-cloud-pubsub:1.150.0' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.149.0" +libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.150.0" ``` ## Authentication @@ -401,7 +401,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-pubsub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.149.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.150.0 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index 0e7f09f74..fb1f033ae 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.149.1-SNAPSHOT + 1.150.0 pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.149.1-SNAPSHOT + 1.150.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.131.1-SNAPSHOT + 1.132.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.131.1-SNAPSHOT + 1.132.0 diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index c7914ddef..a7c17d223 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.149.1-SNAPSHOT + 1.150.0 jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.149.1-SNAPSHOT + 1.150.0 google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index aac991b79..ebc0da233 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.131.1-SNAPSHOT + 1.132.0 grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.149.1-SNAPSHOT + 1.150.0 diff --git a/pom.xml b/pom.xml index 5a46cddd4..b362f8750 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.149.1-SNAPSHOT + 1.150.0 Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.131.1-SNAPSHOT + 1.132.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.131.1-SNAPSHOT + 1.132.0 com.google.cloud google-cloud-pubsub - 1.149.1-SNAPSHOT + 1.150.0 diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index 797014929..8150686ea 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.131.1-SNAPSHOT + 1.132.0 proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.149.1-SNAPSHOT + 1.150.0 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index b96ea4c33..ecb067057 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.149.1-SNAPSHOT + 1.150.0 diff --git a/versions.txt b/versions.txt index 56826c969..f33bdcb90 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.149.0:1.149.1-SNAPSHOT -grpc-google-cloud-pubsub-v1:1.131.0:1.131.1-SNAPSHOT -proto-google-cloud-pubsub-v1:1.131.0:1.131.1-SNAPSHOT +google-cloud-pubsub:1.150.0:1.150.0 +grpc-google-cloud-pubsub-v1:1.132.0:1.132.0 +proto-google-cloud-pubsub-v1:1.132.0:1.132.0 From 876aed861576c370fcb4dd2c0e9440646b5cdc04 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Mon, 23 Mar 2026 18:30:30 -0400 Subject: [PATCH 25/38] chore(main): release 1.150.1-SNAPSHOT (#2712) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index fb1f033ae..032918db0 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.150.0 + 1.150.1-SNAPSHOT pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.150.0 + 1.150.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.0 + 1.132.1-SNAPSHOT com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.0 + 1.132.1-SNAPSHOT diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index a7c17d223..e58032023 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.150.0 + 1.150.1-SNAPSHOT jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.150.0 + 1.150.1-SNAPSHOT google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index ebc0da233..547db37c0 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.0 + 1.132.1-SNAPSHOT grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.0 + 1.150.1-SNAPSHOT diff --git a/pom.xml b/pom.xml index b362f8750..5cbccd989 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.150.0 + 1.150.1-SNAPSHOT Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.0 + 1.132.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.0 + 1.132.1-SNAPSHOT com.google.cloud google-cloud-pubsub - 1.150.0 + 1.150.1-SNAPSHOT diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index 8150686ea..d4728dbe6 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.0 + 1.132.1-SNAPSHOT proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.0 + 1.150.1-SNAPSHOT diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index ecb067057..8fab1a99f 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.150.0 + 1.150.1-SNAPSHOT diff --git a/versions.txt b/versions.txt index f33bdcb90..af016b47a 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.150.0:1.150.0 -grpc-google-cloud-pubsub-v1:1.132.0:1.132.0 -proto-google-cloud-pubsub-v1:1.132.0:1.132.0 +google-cloud-pubsub:1.150.0:1.150.1-SNAPSHOT +grpc-google-cloud-pubsub-v1:1.132.0:1.132.1-SNAPSHOT +proto-google-cloud-pubsub-v1:1.132.0:1.132.1-SNAPSHOT From 7f6dbcc11c41c682bee16818436d036a1df68512 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Tue, 14 Apr 2026 15:46:17 +0100 Subject: [PATCH 26/38] deps: update dependency com.google.cloud:sdk-platform-java-config to v3.61.0 (#2714) * deps: update dependency com.google.cloud:sdk-platform-java-config to v3.61.0 * build: fix unmanaged dependency check --------- Co-authored-by: Diego Marquez --- .github/workflows/unmanaged_dependency_check.yaml | 2 +- google-cloud-pubsub-bom/pom.xml | 2 +- pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/unmanaged_dependency_check.yaml b/.github/workflows/unmanaged_dependency_check.yaml index 8208170cc..c2f165680 100644 --- a/.github/workflows/unmanaged_dependency_check.yaml +++ b/.github/workflows/unmanaged_dependency_check.yaml @@ -17,6 +17,6 @@ jobs: # repository .kokoro/build.sh - name: Unmanaged dependency check - uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v3.58.0 + uses: googleapis/google-cloud-java/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@v1.85.0 with: bom-path: google-cloud-pubsub-bom/pom.xml diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index 032918db0..71853c54f 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -8,7 +8,7 @@ com.google.cloud sdk-platform-java-config - 3.58.0 + 3.61.0 Google Cloud pubsub BOM diff --git a/pom.xml b/pom.xml index 5cbccd989..904782d63 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ com.google.cloud sdk-platform-java-config - 3.58.0 + 3.61.0 From 49cb97ff6d8f1a12abc6689cadc04c888baab723 Mon Sep 17 00:00:00 2001 From: cloud-java-bot <122572305+cloud-java-bot@users.noreply.github.com> Date: Tue, 14 Apr 2026 13:26:41 -0400 Subject: [PATCH 27/38] chore: Update generation configuration at Tue Apr 14 03:07:21 UTC 2026 (#2713) * chore: Update generation configuration at Tue Mar 24 03:02:27 UTC 2026 * chore: Update generation configuration at Wed Mar 25 03:04:37 UTC 2026 * chore: Update generation configuration at Thu Mar 26 03:06:35 UTC 2026 * chore: generate libraries at Thu Mar 26 03:07:04 UTC 2026 * chore: Update generation configuration at Fri Mar 27 03:06:58 UTC 2026 * chore: Update generation configuration at Sat Mar 28 03:03:59 UTC 2026 * chore: generate libraries at Sat Mar 28 03:04:25 UTC 2026 * chore: Update generation configuration at Tue Mar 31 03:06:58 UTC 2026 * chore: Update generation configuration at Wed Apr 1 03:06:55 UTC 2026 * chore: Update generation configuration at Thu Apr 2 03:06:32 UTC 2026 * chore: Update generation configuration at Fri Apr 3 03:06:35 UTC 2026 * chore: Update generation configuration at Tue Apr 7 03:06:43 UTC 2026 * chore: generate libraries at Tue Apr 7 03:07:16 UTC 2026 * chore: Update generation configuration at Wed Apr 8 03:06:45 UTC 2026 * chore: Update generation configuration at Thu Apr 9 03:06:29 UTC 2026 * chore: Update generation configuration at Fri Apr 10 03:07:38 UTC 2026 * chore: Update generation configuration at Sat Apr 11 03:05:07 UTC 2026 * chore: Update generation configuration at Mon Apr 13 03:08:33 UTC 2026 * chore: Update generation configuration at Tue Apr 14 03:07:21 UTC 2026 * build: use correct action version * chore: generate libraries at Tue Apr 14 14:49:54 UTC 2026 * deps: correct graalvm image version * chore: generate libraries at Tue Apr 14 17:04:16 UTC 2026 * chore: update generator version to 2.71.0 * chore: generate libraries at Tue Apr 14 17:10:27 UTC 2026 --------- Co-authored-by: Diego Marquez --- .../hermetic_library_generation.yaml | 2 +- .kokoro/presubmit/graalvm-native-a.cfg | 2 +- .kokoro/presubmit/graalvm-native-b.cfg | 2 +- .kokoro/presubmit/graalvm-native-c.cfg | 2 +- README.md | 2 +- generation_config.yaml | 6 +- .../pubsub/v1/stub/GrpcPublisherStub.java | 11 ++++ .../pubsub/v1/stub/GrpcSchemaServiceStub.java | 13 ++++ .../pubsub/v1/stub/GrpcSubscriberStub.java | 17 +++++ .../pubsub/v1/stub/HttpJsonPublisherStub.java | 11 ++++ .../v1/stub/HttpJsonSchemaServiceStub.java | 13 ++++ .../v1/stub/HttpJsonSubscriberStub.java | 16 +++++ .../pubsub/v1/stub/PublisherStubSettings.java | 1 + .../v1/stub/SchemaServiceStubSettings.java | 1 + .../v1/stub/SubscriberStubSettings.java | 7 ++- .../google/cloud/pubsub/v1/stub/Version.java | 27 ++++++++ .../reflect-config.json | 63 +++++++++++++++++++ .../com/google/pubsub/v1/AIInference.java | 14 ++--- .../pubsub/v1/AIInferenceOrBuilder.java | 4 +- .../main/proto/google/pubsub/v1/pubsub.proto | 2 +- 20 files changed, 195 insertions(+), 21 deletions(-) create mode 100644 google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/Version.java diff --git a/.github/workflows/hermetic_library_generation.yaml b/.github/workflows/hermetic_library_generation.yaml index 1b1f157b2..9564231af 100644 --- a/.github/workflows/hermetic_library_generation.yaml +++ b/.github/workflows/hermetic_library_generation.yaml @@ -37,7 +37,7 @@ jobs: with: fetch-depth: 0 token: ${{ secrets.CLOUD_JAVA_BOT_TOKEN }} - - uses: googleapis/sdk-platform-java/.github/scripts@v2.68.0 + - uses: googleapis/google-cloud-java/sdk-platform-java/.github/scripts@v1.85.0 if: env.SHOULD_RUN == 'true' with: base_ref: ${{ github.base_ref }} diff --git a/.kokoro/presubmit/graalvm-native-a.cfg b/.kokoro/presubmit/graalvm-native-a.cfg index de4ac9dbf..af9f68ad4 100644 --- a/.kokoro/presubmit/graalvm-native-a.cfg +++ b/.kokoro/presubmit/graalvm-native-a.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.58.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.61.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-b.cfg b/.kokoro/presubmit/graalvm-native-b.cfg index d8ae3b322..576031a71 100644 --- a/.kokoro/presubmit/graalvm-native-b.cfg +++ b/.kokoro/presubmit/graalvm-native-b.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.58.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.61.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-c.cfg b/.kokoro/presubmit/graalvm-native-c.cfg index 0e9d1203a..1d86c06d2 100644 --- a/.kokoro/presubmit/graalvm-native-c.cfg +++ b/.kokoro/presubmit/graalvm-native-c.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.58.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.61.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/README.md b/README.md index 9c5387318..ce74acefa 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.78.0') +implementation platform('com.google.cloud:libraries-bom:26.79.0') implementation 'com.google.cloud:google-cloud-pubsub' ``` diff --git a/generation_config.yaml b/generation_config.yaml index 454916e8f..e13e43f99 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,6 +1,6 @@ -gapic_generator_version: 2.68.0 -googleapis_commitish: 758d8244a84065ea6b0dfacff3d3e9284983390b -libraries_bom_version: 26.78.0 +gapic_generator_version: 2.71.0 +googleapis_commitish: 62e4ecb2f4390728990514fea14aad0431881a52 +libraries_bom_version: 26.79.0 libraries: - api_shortname: pubsub name_pretty: Cloud Pub/Sub diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcPublisherStub.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcPublisherStub.java index aca63c6bc..137efe471 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcPublisherStub.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcPublisherStub.java @@ -257,6 +257,7 @@ protected GrpcPublisherStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings updateTopicTransportSettings = GrpcCallSettings.newBuilder() @@ -277,6 +278,7 @@ protected GrpcPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); GrpcCallSettings getTopicTransportSettings = GrpcCallSettings.newBuilder() @@ -287,6 +289,7 @@ protected GrpcPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); GrpcCallSettings listTopicsTransportSettings = GrpcCallSettings.newBuilder() @@ -297,6 +300,7 @@ protected GrpcPublisherStub( builder.add("project", String.valueOf(request.getProject())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getProject()) .build(); GrpcCallSettings listTopicSubscriptionsTransportSettings = @@ -309,6 +313,7 @@ protected GrpcPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); GrpcCallSettings listTopicSnapshotsTransportSettings = @@ -320,6 +325,7 @@ protected GrpcPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); GrpcCallSettings deleteTopicTransportSettings = GrpcCallSettings.newBuilder() @@ -330,6 +336,7 @@ protected GrpcPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); GrpcCallSettings detachSubscriptionTransportSettings = @@ -341,6 +348,7 @@ protected GrpcPublisherStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings setIamPolicyTransportSettings = GrpcCallSettings.newBuilder() @@ -351,6 +359,7 @@ protected GrpcPublisherStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); GrpcCallSettings getIamPolicyTransportSettings = GrpcCallSettings.newBuilder() @@ -361,6 +370,7 @@ protected GrpcPublisherStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); GrpcCallSettings testIamPermissionsTransportSettings = @@ -372,6 +382,7 @@ protected GrpcPublisherStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); this.createTopicCallable = diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcSchemaServiceStub.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcSchemaServiceStub.java index 403a90e19..a13604e4b 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcSchemaServiceStub.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcSchemaServiceStub.java @@ -269,6 +269,7 @@ protected GrpcSchemaServiceStub( builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getParent()) .build(); GrpcCallSettings getSchemaTransportSettings = GrpcCallSettings.newBuilder() @@ -279,6 +280,7 @@ protected GrpcSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings listSchemasTransportSettings = GrpcCallSettings.newBuilder() @@ -289,6 +291,7 @@ protected GrpcSchemaServiceStub( builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getParent()) .build(); GrpcCallSettings listSchemaRevisionsTransportSettings = @@ -300,6 +303,7 @@ protected GrpcSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings commitSchemaTransportSettings = GrpcCallSettings.newBuilder() @@ -310,6 +314,7 @@ protected GrpcSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings rollbackSchemaTransportSettings = GrpcCallSettings.newBuilder() @@ -320,6 +325,7 @@ protected GrpcSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings deleteSchemaRevisionTransportSettings = GrpcCallSettings.newBuilder() @@ -330,6 +336,7 @@ protected GrpcSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings deleteSchemaTransportSettings = GrpcCallSettings.newBuilder() @@ -340,6 +347,7 @@ protected GrpcSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings validateSchemaTransportSettings = @@ -351,6 +359,7 @@ protected GrpcSchemaServiceStub( builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getParent()) .build(); GrpcCallSettings validateMessageTransportSettings = @@ -362,6 +371,7 @@ protected GrpcSchemaServiceStub( builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getParent()) .build(); GrpcCallSettings setIamPolicyTransportSettings = GrpcCallSettings.newBuilder() @@ -372,6 +382,7 @@ protected GrpcSchemaServiceStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); GrpcCallSettings getIamPolicyTransportSettings = GrpcCallSettings.newBuilder() @@ -382,6 +393,7 @@ protected GrpcSchemaServiceStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); GrpcCallSettings testIamPermissionsTransportSettings = @@ -393,6 +405,7 @@ protected GrpcSchemaServiceStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); this.createSchemaCallable = diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcSubscriberStub.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcSubscriberStub.java index 7669b2cd6..6c51332e6 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcSubscriberStub.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/GrpcSubscriberStub.java @@ -348,6 +348,7 @@ protected GrpcSubscriberStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings getSubscriptionTransportSettings = GrpcCallSettings.newBuilder() @@ -358,6 +359,7 @@ protected GrpcSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings updateSubscriptionTransportSettings = GrpcCallSettings.newBuilder() @@ -380,6 +382,7 @@ protected GrpcSubscriberStub( builder.add("project", String.valueOf(request.getProject())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getProject()) .build(); GrpcCallSettings deleteSubscriptionTransportSettings = GrpcCallSettings.newBuilder() @@ -390,6 +393,7 @@ protected GrpcSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings modifyAckDeadlineTransportSettings = GrpcCallSettings.newBuilder() @@ -400,6 +404,7 @@ protected GrpcSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings acknowledgeTransportSettings = GrpcCallSettings.newBuilder() @@ -410,6 +415,7 @@ protected GrpcSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings pullTransportSettings = GrpcCallSettings.newBuilder() @@ -420,10 +426,12 @@ protected GrpcSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings streamingPullTransportSettings = GrpcCallSettings.newBuilder() .setMethodDescriptor(streamingPullMethodDescriptor) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings modifyPushConfigTransportSettings = GrpcCallSettings.newBuilder() @@ -434,6 +442,7 @@ protected GrpcSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings getSnapshotTransportSettings = GrpcCallSettings.newBuilder() @@ -444,6 +453,7 @@ protected GrpcSubscriberStub( builder.add("snapshot", String.valueOf(request.getSnapshot())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSnapshot()) .build(); GrpcCallSettings listSnapshotsTransportSettings = GrpcCallSettings.newBuilder() @@ -454,6 +464,7 @@ protected GrpcSubscriberStub( builder.add("project", String.valueOf(request.getProject())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getProject()) .build(); GrpcCallSettings createSnapshotTransportSettings = GrpcCallSettings.newBuilder() @@ -464,6 +475,7 @@ protected GrpcSubscriberStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); GrpcCallSettings updateSnapshotTransportSettings = GrpcCallSettings.newBuilder() @@ -484,6 +496,7 @@ protected GrpcSubscriberStub( builder.add("snapshot", String.valueOf(request.getSnapshot())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSnapshot()) .build(); GrpcCallSettings seekTransportSettings = GrpcCallSettings.newBuilder() @@ -494,6 +507,7 @@ protected GrpcSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); GrpcCallSettings setIamPolicyTransportSettings = GrpcCallSettings.newBuilder() @@ -504,6 +518,7 @@ protected GrpcSubscriberStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); GrpcCallSettings getIamPolicyTransportSettings = GrpcCallSettings.newBuilder() @@ -514,6 +529,7 @@ protected GrpcSubscriberStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); GrpcCallSettings testIamPermissionsTransportSettings = @@ -525,6 +541,7 @@ protected GrpcSubscriberStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); this.createSubscriptionCallable = diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonPublisherStub.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonPublisherStub.java index 09c5f83f8..011a019de 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonPublisherStub.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonPublisherStub.java @@ -582,6 +582,7 @@ protected HttpJsonPublisherStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings updateTopicTransportSettings = HttpJsonCallSettings.newBuilder() @@ -604,6 +605,7 @@ protected HttpJsonPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); HttpJsonCallSettings getTopicTransportSettings = HttpJsonCallSettings.newBuilder() @@ -615,6 +617,7 @@ protected HttpJsonPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); HttpJsonCallSettings listTopicsTransportSettings = HttpJsonCallSettings.newBuilder() @@ -626,6 +629,7 @@ protected HttpJsonPublisherStub( builder.add("project", String.valueOf(request.getProject())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getProject()) .build(); HttpJsonCallSettings listTopicSubscriptionsTransportSettings = @@ -639,6 +643,7 @@ protected HttpJsonPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); HttpJsonCallSettings listTopicSnapshotsTransportSettings = @@ -651,6 +656,7 @@ protected HttpJsonPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); HttpJsonCallSettings deleteTopicTransportSettings = HttpJsonCallSettings.newBuilder() @@ -662,6 +668,7 @@ protected HttpJsonPublisherStub( builder.add("topic", String.valueOf(request.getTopic())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getTopic()) .build(); HttpJsonCallSettings detachSubscriptionTransportSettings = @@ -674,6 +681,7 @@ protected HttpJsonPublisherStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); HttpJsonCallSettings setIamPolicyTransportSettings = HttpJsonCallSettings.newBuilder() @@ -685,6 +693,7 @@ protected HttpJsonPublisherStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); HttpJsonCallSettings getIamPolicyTransportSettings = HttpJsonCallSettings.newBuilder() @@ -696,6 +705,7 @@ protected HttpJsonPublisherStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); HttpJsonCallSettings testIamPermissionsTransportSettings = @@ -708,6 +718,7 @@ protected HttpJsonPublisherStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); this.createTopicCallable = diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonSchemaServiceStub.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonSchemaServiceStub.java index 0b9a729a4..d8f726b6f 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonSchemaServiceStub.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonSchemaServiceStub.java @@ -627,6 +627,7 @@ protected HttpJsonSchemaServiceStub( builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getParent()) .build(); HttpJsonCallSettings getSchemaTransportSettings = HttpJsonCallSettings.newBuilder() @@ -638,6 +639,7 @@ protected HttpJsonSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings listSchemasTransportSettings = HttpJsonCallSettings.newBuilder() @@ -649,6 +651,7 @@ protected HttpJsonSchemaServiceStub( builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getParent()) .build(); HttpJsonCallSettings listSchemaRevisionsTransportSettings = @@ -662,6 +665,7 @@ protected HttpJsonSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings commitSchemaTransportSettings = HttpJsonCallSettings.newBuilder() @@ -673,6 +677,7 @@ protected HttpJsonSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings rollbackSchemaTransportSettings = HttpJsonCallSettings.newBuilder() @@ -684,6 +689,7 @@ protected HttpJsonSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings deleteSchemaRevisionTransportSettings = @@ -696,6 +702,7 @@ protected HttpJsonSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings deleteSchemaTransportSettings = HttpJsonCallSettings.newBuilder() @@ -707,6 +714,7 @@ protected HttpJsonSchemaServiceStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings validateSchemaTransportSettings = @@ -719,6 +727,7 @@ protected HttpJsonSchemaServiceStub( builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getParent()) .build(); HttpJsonCallSettings validateMessageTransportSettings = @@ -731,6 +740,7 @@ protected HttpJsonSchemaServiceStub( builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getParent()) .build(); HttpJsonCallSettings setIamPolicyTransportSettings = HttpJsonCallSettings.newBuilder() @@ -742,6 +752,7 @@ protected HttpJsonSchemaServiceStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); HttpJsonCallSettings getIamPolicyTransportSettings = HttpJsonCallSettings.newBuilder() @@ -753,6 +764,7 @@ protected HttpJsonSchemaServiceStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); HttpJsonCallSettings testIamPermissionsTransportSettings = @@ -765,6 +777,7 @@ protected HttpJsonSchemaServiceStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); this.createSchemaCallable = diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonSubscriberStub.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonSubscriberStub.java index 4bb0774b8..ce9647bd2 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonSubscriberStub.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/HttpJsonSubscriberStub.java @@ -818,6 +818,7 @@ protected HttpJsonSubscriberStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings getSubscriptionTransportSettings = HttpJsonCallSettings.newBuilder() @@ -829,6 +830,7 @@ protected HttpJsonSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); HttpJsonCallSettings updateSubscriptionTransportSettings = @@ -854,6 +856,7 @@ protected HttpJsonSubscriberStub( builder.add("project", String.valueOf(request.getProject())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getProject()) .build(); HttpJsonCallSettings deleteSubscriptionTransportSettings = HttpJsonCallSettings.newBuilder() @@ -865,6 +868,7 @@ protected HttpJsonSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); HttpJsonCallSettings modifyAckDeadlineTransportSettings = HttpJsonCallSettings.newBuilder() @@ -876,6 +880,7 @@ protected HttpJsonSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); HttpJsonCallSettings acknowledgeTransportSettings = HttpJsonCallSettings.newBuilder() @@ -887,6 +892,7 @@ protected HttpJsonSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); HttpJsonCallSettings pullTransportSettings = HttpJsonCallSettings.newBuilder() @@ -898,6 +904,7 @@ protected HttpJsonSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); HttpJsonCallSettings modifyPushConfigTransportSettings = HttpJsonCallSettings.newBuilder() @@ -909,6 +916,7 @@ protected HttpJsonSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); HttpJsonCallSettings getSnapshotTransportSettings = HttpJsonCallSettings.newBuilder() @@ -920,6 +928,7 @@ protected HttpJsonSubscriberStub( builder.add("snapshot", String.valueOf(request.getSnapshot())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSnapshot()) .build(); HttpJsonCallSettings listSnapshotsTransportSettings = @@ -932,6 +941,7 @@ protected HttpJsonSubscriberStub( builder.add("project", String.valueOf(request.getProject())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getProject()) .build(); HttpJsonCallSettings createSnapshotTransportSettings = HttpJsonCallSettings.newBuilder() @@ -943,6 +953,7 @@ protected HttpJsonSubscriberStub( builder.add("name", String.valueOf(request.getName())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getName()) .build(); HttpJsonCallSettings updateSnapshotTransportSettings = HttpJsonCallSettings.newBuilder() @@ -965,6 +976,7 @@ protected HttpJsonSubscriberStub( builder.add("snapshot", String.valueOf(request.getSnapshot())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSnapshot()) .build(); HttpJsonCallSettings seekTransportSettings = HttpJsonCallSettings.newBuilder() @@ -976,6 +988,7 @@ protected HttpJsonSubscriberStub( builder.add("subscription", String.valueOf(request.getSubscription())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getSubscription()) .build(); HttpJsonCallSettings setIamPolicyTransportSettings = HttpJsonCallSettings.newBuilder() @@ -987,6 +1000,7 @@ protected HttpJsonSubscriberStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); HttpJsonCallSettings getIamPolicyTransportSettings = HttpJsonCallSettings.newBuilder() @@ -998,6 +1012,7 @@ protected HttpJsonSubscriberStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); HttpJsonCallSettings testIamPermissionsTransportSettings = @@ -1010,6 +1025,7 @@ protected HttpJsonSubscriberStub( builder.add("resource", String.valueOf(request.getResource())); return builder.build(); }) + .setResourceNameExtractor(request -> request.getResource()) .build(); this.createSubscriptionCallable = diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/PublisherStubSettings.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/PublisherStubSettings.java index ed148fe35..a0c47d70d 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/PublisherStubSettings.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/PublisherStubSettings.java @@ -602,6 +602,7 @@ protected LibraryMetadata getLibraryMetadata() { return LibraryMetadata.newBuilder() .setArtifactName("com.google.cloud:google-cloud-pubsub") .setRepository("googleapis/java-pubsub") + .setVersion(Version.VERSION) .build(); } diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SchemaServiceStubSettings.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SchemaServiceStubSettings.java index 1509bd98e..2e879a074 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SchemaServiceStubSettings.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SchemaServiceStubSettings.java @@ -467,6 +467,7 @@ protected LibraryMetadata getLibraryMetadata() { return LibraryMetadata.newBuilder() .setArtifactName("com.google.cloud:google-cloud-pubsub") .setRepository("googleapis/java-pubsub") + .setVersion(Version.VERSION) .build(); } diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SubscriberStubSettings.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SubscriberStubSettings.java index 82446684a..5f03d7b03 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SubscriberStubSettings.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/SubscriberStubSettings.java @@ -517,6 +517,7 @@ protected LibraryMetadata getLibraryMetadata() { return LibraryMetadata.newBuilder() .setArtifactName("com.google.cloud:google-cloud-pubsub") .setRepository("googleapis/java-pubsub") + .setVersion(Version.VERSION) .build(); } @@ -630,10 +631,10 @@ public static class Builder extends StubSettings.Builder * @@ -1041,7 +1041,7 @@ public java.lang.String getServiceAccountEmail() { * endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + * agent](https://cloud.google.com/iam/docs/service-agents), * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. * * @@ -1841,7 +1841,7 @@ public Builder clearUnstructuredInference() { * endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + * agent](https://cloud.google.com/iam/docs/service-agents), * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. * * @@ -1869,7 +1869,7 @@ public java.lang.String getServiceAccountEmail() { * endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + * agent](https://cloud.google.com/iam/docs/service-agents), * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. * * @@ -1897,7 +1897,7 @@ public com.google.protobuf.ByteString getServiceAccountEmailBytes() { * endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + * agent](https://cloud.google.com/iam/docs/service-agents), * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. * * @@ -1924,7 +1924,7 @@ public Builder setServiceAccountEmail(java.lang.String value) { * endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + * agent](https://cloud.google.com/iam/docs/service-agents), * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. * * @@ -1947,7 +1947,7 @@ public Builder clearServiceAccountEmail() { * endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + * agent](https://cloud.google.com/iam/docs/service-agents), * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. * * diff --git a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/AIInferenceOrBuilder.java b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/AIInferenceOrBuilder.java index c7039d308..07aa76e61 100644 --- a/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/AIInferenceOrBuilder.java +++ b/proto-google-cloud-pubsub-v1/src/main/java/com/google/pubsub/v1/AIInferenceOrBuilder.java @@ -110,7 +110,7 @@ public interface AIInferenceOrBuilder * endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + * agent](https://cloud.google.com/iam/docs/service-agents), * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. * * @@ -128,7 +128,7 @@ public interface AIInferenceOrBuilder * endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + * agent](https://cloud.google.com/iam/docs/service-agents), * service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com, is used. * * 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 3f07ec45c..382343c6a 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 @@ -834,7 +834,7 @@ message AIInference { // endpoints. The resource 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]({$universe.dns_names.final_documentation_domain}/iam/docs/service-agents), + // 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]; } From 880f28a11d7dc2864ae958e59940bb24bb6fa555 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Tue, 14 Apr 2026 16:01:22 -0400 Subject: [PATCH 28/38] chore(main): release 1.150.1 (#2717) * chore(main): release 1.150.1 * chore: generate libraries at Tue Apr 14 17:28:43 UTC 2026 * fix: restore Version.java --------- Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: cloud-java-bot Co-authored-by: Diego Marquez --- .github/.OwlBot-hermetic.yaml | 1 + CHANGELOG.md | 18 ++++++++++++++++++ README.md | 6 +++--- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- .../google/cloud/pubsub/v1/stub/Version.java | 2 +- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 11 files changed, 41 insertions(+), 22 deletions(-) diff --git a/.github/.OwlBot-hermetic.yaml b/.github/.OwlBot-hermetic.yaml index 85ecbdeb5..1c4539892 100644 --- a/.github/.OwlBot-hermetic.yaml +++ b/.github/.OwlBot-hermetic.yaml @@ -18,6 +18,7 @@ deep-remove-regex: #Args=--initialize-at-build-time=org.junit.runners.model.FrameworkField deep-preserve-regex: +- "/.*google-.*/src/main/java/.*/stub/Version.java" - "/google-cloud-pubsub/src/test/resources/META-INF/native-image/.*" - "/google-cloud-pubsub/src/main/java/com/google/cloud/.*/v.*/it/IT.*Test.java" - "/google-.*/src/test/java/com/google/cloud/.*/v.*/it/IT.*Test.java" diff --git a/CHANGELOG.md b/CHANGELOG.md index 81dfd9414..c8247d9be 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## [1.150.1](https://github.com/googleapis/java-pubsub/compare/v1.150.0...v1.150.1) (2026-04-14) + + +### Bug Fixes + +* **deps:** Update the Java code generator (gapic-generator-java) to 2.71.0 ([49cb97f](https://github.com/googleapis/java-pubsub/commit/49cb97ff6d8f1a12abc6689cadc04c888baab723)) +* Increase streaming pull timeout ([49cb97f](https://github.com/googleapis/java-pubsub/commit/49cb97ff6d8f1a12abc6689cadc04c888baab723)) + + +### Dependencies + +* Update dependency com.google.cloud:sdk-platform-java-config to v3.61.0 ([#2714](https://github.com/googleapis/java-pubsub/issues/2714)) ([7f6dbcc](https://github.com/googleapis/java-pubsub/commit/7f6dbcc11c41c682bee16818436d036a1df68512)) + + +### Documentation + +* Fix documentation URL AIInference MessageTransform service_account_email field ([49cb97f](https://github.com/googleapis/java-pubsub/commit/49cb97ff6d8f1a12abc6689cadc04c888baab723)) + ## [1.150.0](https://github.com/googleapis/java-pubsub/compare/v1.149.0...v1.150.0) (2026-03-23) diff --git a/README.md b/README.md index ce74acefa..242587b4b 100644 --- a/README.md +++ b/README.md @@ -58,13 +58,13 @@ implementation 'com.google.cloud:google-cloud-pubsub' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-pubsub:1.150.0' +implementation 'com.google.cloud:google-cloud-pubsub:1.150.1' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.150.0" +libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.150.1" ``` ## Authentication @@ -401,7 +401,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-pubsub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.150.0 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.150.1 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index 71853c54f..4422b6623 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.150.1-SNAPSHOT + 1.150.1 pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.150.1-SNAPSHOT + 1.150.1 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.1-SNAPSHOT + 1.132.1 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.1-SNAPSHOT + 1.132.1 diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index e58032023..b3de23c8e 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.150.1-SNAPSHOT + 1.150.1 jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.150.1-SNAPSHOT + 1.150.1 google-cloud-pubsub diff --git a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/Version.java b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/Version.java index 833a2342d..362fa0f69 100644 --- a/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/Version.java +++ b/google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/stub/Version.java @@ -21,7 +21,7 @@ @InternalApi("For internal use only") final class Version { // {x-version-update-start:google-cloud-pubsub:current} - static final String VERSION = "0.0.0-SNAPSHOT"; + static final String VERSION = "1.150.1"; // {x-version-update-end} } diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index 547db37c0..64bed5f2e 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.1-SNAPSHOT + 1.132.1 grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.1-SNAPSHOT + 1.150.1 diff --git a/pom.xml b/pom.xml index 904782d63..819b85d3d 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.150.1-SNAPSHOT + 1.150.1 Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.1-SNAPSHOT + 1.132.1 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.1-SNAPSHOT + 1.132.1 com.google.cloud google-cloud-pubsub - 1.150.1-SNAPSHOT + 1.150.1 diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index d4728dbe6..21be59d19 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.1-SNAPSHOT + 1.132.1 proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.1-SNAPSHOT + 1.150.1 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 8fab1a99f..516ebe76e 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.150.1-SNAPSHOT + 1.150.1 diff --git a/versions.txt b/versions.txt index af016b47a..e6514d1a7 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.150.0:1.150.1-SNAPSHOT -grpc-google-cloud-pubsub-v1:1.132.0:1.132.1-SNAPSHOT -proto-google-cloud-pubsub-v1:1.132.0:1.132.1-SNAPSHOT +google-cloud-pubsub:1.150.1:1.150.1 +grpc-google-cloud-pubsub-v1:1.132.1:1.132.1 +proto-google-cloud-pubsub-v1:1.132.1:1.132.1 From b6a4d2f3dc93fd4deaae6754756496d7d696e478 Mon Sep 17 00:00:00 2001 From: Tomo Suzuki Date: Tue, 21 Apr 2026 15:33:26 -0400 Subject: [PATCH 29/38] chore: stop referencing googleapis/sdk-platform-java (#2724) * chore: generate libraries at Tue Apr 21 17:39:00 UTC 2026 * chore: Use gapic-libraries-bom version for tags --------- Co-authored-by: cloud-java-bot --- .github/scripts/update_generation_config.sh | 19 ++++++++++++------- .github/workflows/renovate_config_check.yaml | 7 +++---- renovate.json | 4 ++-- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/.github/scripts/update_generation_config.sh b/.github/scripts/update_generation_config.sh index 74d0e6cc4..f448fafd7 100644 --- a/.github/scripts/update_generation_config.sh +++ b/.github/scripts/update_generation_config.sh @@ -48,13 +48,14 @@ function update_config() { } # Update an action to a new version in GitHub action. +# the second argument must have the git tag (including "v"). function update_action() { local key_word=$1 local new_value=$2 local file=$3 echo "Update ${key_word} to ${new_value} in ${file}" # use a different delimiter because the key_word contains "/". - sed -i -e "s|${key_word}@v.*$|${key_word}@v${new_value}|" "${file}" + sed -i -e "s|${key_word}@[^ ]*$|${key_word}@${new_value}|" "${file}" } # The parameters of this script is: @@ -143,12 +144,16 @@ rm -rf tmp-googleapis update_config "googleapis_commitish" "${latest_commit}" "${generation_config}" # Update gapic-generator-java version to the latest -latest_version=$(get_latest_released_version "com.google.api" "gapic-generator-java") -update_config "gapic_generator_version" "${latest_version}" "${generation_config}" - -# Update composite action version to latest gapic-generator-java version -update_action "googleapis/sdk-platform-java/.github/scripts" \ - "${latest_version}" \ +latest_gapic_generator_version=$(get_latest_released_version "com.google.api" "gapic-generator-java") +update_config "gapic_generator_version" "${latest_gapic_generator_version}" "${generation_config}" + +# Update the GitHub Actions reference to the latest. +# After the google-cloud-java monorepo migration of sdk-platform-java, +# we cannot rely on the gapic-generator-java version tag. Let's use +# the gapic-libraries-bom version +latest_gapic_libraries_bom_version=$(get_latest_released_version "com.google.cloud" "gapic-libraries-bom") +update_action "googleapis/google-cloud-java/sdk-platform-java/.github/scripts" \ + "v${latest_gapic_libraries_bom_version}" \ "${workflow}" # Update libraries-bom version to the latest diff --git a/.github/workflows/renovate_config_check.yaml b/.github/workflows/renovate_config_check.yaml index 47b9e87c9..8c922936b 100644 --- a/.github/workflows/renovate_config_check.yaml +++ b/.github/workflows/renovate_config_check.yaml @@ -4,6 +4,7 @@ on: pull_request: paths: - 'renovate.json' + - '.github/workflows/renovate_config_check.yaml' jobs: renovate_bot_config_validation: @@ -18,8 +19,6 @@ jobs: with: node-version: '22' - - name: Install Renovate and Config Validator + - name: Run Renovate Config Validator run: | - npm install -g npm@latest - npm install --global renovate - renovate-config-validator + npx --package renovate@43.136.0 renovate-config-validator diff --git a/renovate.json b/renovate.json index 7d5a289e6..91b1a27f7 100644 --- a/renovate.json +++ b/renovate.json @@ -26,9 +26,9 @@ "^.github/workflows/unmanaged_dependency_check.yaml$" ], "matchStrings": [ - "uses: googleapis/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@google-cloud-shared-dependencies/v(?.+?)\\n" + "uses: googleapis/google-cloud-java/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@v(?.+?)\\n" ], - "depNameTemplate": "com.google.cloud:sdk-platform-java-config", + "depNameTemplate": "com.google.cloud:gapic-libraries-bom", "datasourceTemplate": "maven" } ], From 052b02c98b2f16c38fb4833948e916a92c3bf02b Mon Sep 17 00:00:00 2001 From: Tomo Suzuki Date: Tue, 5 May 2026 21:18:36 -0400 Subject: [PATCH 30/38] ci: use CLOUD_JAVA_BOT_GITHUB_TOKEN (#2728) --- .github/workflows/hermetic_library_generation.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/hermetic_library_generation.yaml b/.github/workflows/hermetic_library_generation.yaml index 9564231af..fe2fc8cff 100644 --- a/.github/workflows/hermetic_library_generation.yaml +++ b/.github/workflows/hermetic_library_generation.yaml @@ -36,10 +36,10 @@ jobs: if: env.SHOULD_RUN == 'true' with: fetch-depth: 0 - token: ${{ secrets.CLOUD_JAVA_BOT_TOKEN }} + token: ${{ secrets.CLOUD_JAVA_BOT_GITHUB_TOKEN }} - uses: googleapis/google-cloud-java/sdk-platform-java/.github/scripts@v1.85.0 if: env.SHOULD_RUN == 'true' with: base_ref: ${{ github.base_ref }} head_ref: ${{ github.head_ref }} - token: ${{ secrets.CLOUD_JAVA_BOT_TOKEN }} + token: ${{ secrets.CLOUD_JAVA_BOT_GITHUB_TOKEN }} From 77e0c652c73a2fb790f01b76f2f32d95092188cb Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Thu, 7 May 2026 01:08:14 +0100 Subject: [PATCH 31/38] deps: update dependency com.google.cloud:sdk-platform-java-config to v3.62.0 (#2729) --- google-cloud-pubsub-bom/pom.xml | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index 4422b6623..29e800263 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -8,7 +8,7 @@ com.google.cloud sdk-platform-java-config - 3.61.0 + 3.62.0 Google Cloud pubsub BOM diff --git a/pom.xml b/pom.xml index 819b85d3d..808d7a809 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ com.google.cloud sdk-platform-java-config - 3.61.0 + 3.62.0 From 3da5b3baa1c4d97e58208b3c1de5533f2b10bf40 Mon Sep 17 00:00:00 2001 From: Mend Renovate Date: Thu, 7 May 2026 01:09:00 +0100 Subject: [PATCH 32/38] deps: update googleapis/google-cloud-java action to v1.86.0 (#2727) --- .github/workflows/hermetic_library_generation.yaml | 2 +- .github/workflows/unmanaged_dependency_check.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/hermetic_library_generation.yaml b/.github/workflows/hermetic_library_generation.yaml index fe2fc8cff..132917410 100644 --- a/.github/workflows/hermetic_library_generation.yaml +++ b/.github/workflows/hermetic_library_generation.yaml @@ -37,7 +37,7 @@ jobs: with: fetch-depth: 0 token: ${{ secrets.CLOUD_JAVA_BOT_GITHUB_TOKEN }} - - uses: googleapis/google-cloud-java/sdk-platform-java/.github/scripts@v1.85.0 + - uses: googleapis/google-cloud-java/sdk-platform-java/.github/scripts@v1.86.0 if: env.SHOULD_RUN == 'true' with: base_ref: ${{ github.base_ref }} diff --git a/.github/workflows/unmanaged_dependency_check.yaml b/.github/workflows/unmanaged_dependency_check.yaml index c2f165680..1b9b972b4 100644 --- a/.github/workflows/unmanaged_dependency_check.yaml +++ b/.github/workflows/unmanaged_dependency_check.yaml @@ -17,6 +17,6 @@ jobs: # repository .kokoro/build.sh - name: Unmanaged dependency check - uses: googleapis/google-cloud-java/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@v1.85.0 + uses: googleapis/google-cloud-java/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@v1.86.0 with: bom-path: google-cloud-pubsub-bom/pom.xml From 50a213c661cf3cbe25caf672eafc1edacd888d02 Mon Sep 17 00:00:00 2001 From: Jin Seop Kim Date: Thu, 7 May 2026 12:48:47 -0400 Subject: [PATCH 33/38] Revert "deps: update googleapis/google-cloud-java action to v1.86.0 (#2727)" (#2731) This reverts commit 3da5b3baa1c4d97e58208b3c1de5533f2b10bf40. --- .github/workflows/hermetic_library_generation.yaml | 2 +- .github/workflows/unmanaged_dependency_check.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/hermetic_library_generation.yaml b/.github/workflows/hermetic_library_generation.yaml index 132917410..fe2fc8cff 100644 --- a/.github/workflows/hermetic_library_generation.yaml +++ b/.github/workflows/hermetic_library_generation.yaml @@ -37,7 +37,7 @@ jobs: with: fetch-depth: 0 token: ${{ secrets.CLOUD_JAVA_BOT_GITHUB_TOKEN }} - - uses: googleapis/google-cloud-java/sdk-platform-java/.github/scripts@v1.86.0 + - uses: googleapis/google-cloud-java/sdk-platform-java/.github/scripts@v1.85.0 if: env.SHOULD_RUN == 'true' with: base_ref: ${{ github.base_ref }} diff --git a/.github/workflows/unmanaged_dependency_check.yaml b/.github/workflows/unmanaged_dependency_check.yaml index 1b9b972b4..c2f165680 100644 --- a/.github/workflows/unmanaged_dependency_check.yaml +++ b/.github/workflows/unmanaged_dependency_check.yaml @@ -17,6 +17,6 @@ jobs: # repository .kokoro/build.sh - name: Unmanaged dependency check - uses: googleapis/google-cloud-java/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@v1.86.0 + uses: googleapis/google-cloud-java/sdk-platform-java/java-shared-dependencies/unmanaged-dependency-check@v1.85.0 with: bom-path: google-cloud-pubsub-bom/pom.xml From b2f79dca23689bd3ac460719dff61569136887c3 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 7 May 2026 13:13:11 -0400 Subject: [PATCH 34/38] chore(main): release 1.150.2-SNAPSHOT (#2718) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index 29e800263..a0c7174c9 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.150.1 + 1.150.2-SNAPSHOT pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.150.1 + 1.150.2-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.1 + 1.132.2-SNAPSHOT com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.1 + 1.132.2-SNAPSHOT diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index b3de23c8e..58d1ee969 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.150.1 + 1.150.2-SNAPSHOT jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.150.1 + 1.150.2-SNAPSHOT google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index 64bed5f2e..6a2ac7d05 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.1 + 1.132.2-SNAPSHOT grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.1 + 1.150.2-SNAPSHOT diff --git a/pom.xml b/pom.xml index 808d7a809..36b20be83 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.150.1 + 1.150.2-SNAPSHOT Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.1 + 1.132.2-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.1 + 1.132.2-SNAPSHOT com.google.cloud google-cloud-pubsub - 1.150.1 + 1.150.2-SNAPSHOT diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index 21be59d19..9d08e37e4 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.1 + 1.132.2-SNAPSHOT proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.1 + 1.150.2-SNAPSHOT diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 516ebe76e..928a28a33 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.150.1 + 1.150.2-SNAPSHOT diff --git a/versions.txt b/versions.txt index e6514d1a7..8efc8a823 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.150.1:1.150.1 -grpc-google-cloud-pubsub-v1:1.132.1:1.132.1 -proto-google-cloud-pubsub-v1:1.132.1:1.132.1 +google-cloud-pubsub:1.150.1:1.150.2-SNAPSHOT +grpc-google-cloud-pubsub-v1:1.132.1:1.132.2-SNAPSHOT +proto-google-cloud-pubsub-v1:1.132.1:1.132.2-SNAPSHOT From a9b68a20208246b435739a1169d240a55c89695c Mon Sep 17 00:00:00 2001 From: cloud-java-bot <122572305+cloud-java-bot@users.noreply.github.com> Date: Thu, 7 May 2026 14:29:46 -0400 Subject: [PATCH 35/38] chore: Update generation configuration at Thu May 7 00:15:53 UTC 2026 (#2730) * chore: Update generation configuration at Thu May 7 00:15:53 UTC 2026 * chore: generate libraries at Thu May 7 17:45:58 UTC 2026 --------- Co-authored-by: Jin Seop Kim --- .kokoro/presubmit/graalvm-native-a.cfg | 2 +- .kokoro/presubmit/graalvm-native-b.cfg | 2 +- .kokoro/presubmit/graalvm-native-c.cfg | 2 +- README.md | 2 +- generation_config.yaml | 6 +++--- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.kokoro/presubmit/graalvm-native-a.cfg b/.kokoro/presubmit/graalvm-native-a.cfg index af9f68ad4..7b8ea75fc 100644 --- a/.kokoro/presubmit/graalvm-native-a.cfg +++ b/.kokoro/presubmit/graalvm-native-a.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.61.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_a:3.62.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-b.cfg b/.kokoro/presubmit/graalvm-native-b.cfg index 576031a71..53ecdc6d6 100644 --- a/.kokoro/presubmit/graalvm-native-b.cfg +++ b/.kokoro/presubmit/graalvm-native-b.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.61.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_b:3.62.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/.kokoro/presubmit/graalvm-native-c.cfg b/.kokoro/presubmit/graalvm-native-c.cfg index 1d86c06d2..f9e58f879 100644 --- a/.kokoro/presubmit/graalvm-native-c.cfg +++ b/.kokoro/presubmit/graalvm-native-c.cfg @@ -3,7 +3,7 @@ # Configure the docker image for kokoro-trampoline. env_vars: { key: "TRAMPOLINE_IMAGE" - value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.61.0" # {x-version-update:google-cloud-shared-dependencies:current} + value: "gcr.io/cloud-devrel-public-resources/graalvm_sdk_platform_c:3.62.0" # {x-version-update:google-cloud-shared-dependencies:current} } env_vars: { diff --git a/README.md b/README.md index 242587b4b..23cc2bcc8 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.79.0') +implementation platform('com.google.cloud:libraries-bom:26.80.0') implementation 'com.google.cloud:google-cloud-pubsub' ``` diff --git a/generation_config.yaml b/generation_config.yaml index e13e43f99..e6044361b 100644 --- a/generation_config.yaml +++ b/generation_config.yaml @@ -1,6 +1,6 @@ -gapic_generator_version: 2.71.0 -googleapis_commitish: 62e4ecb2f4390728990514fea14aad0431881a52 -libraries_bom_version: 26.79.0 +gapic_generator_version: 2.72.0 +googleapis_commitish: c2648728afb6deff882cfc4167a21abd382870fa +libraries_bom_version: 26.80.0 libraries: - api_shortname: pubsub name_pretty: Cloud Pub/Sub From d21882fae39fd9ae70f5231199e02081289d9ae4 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 7 May 2026 14:52:56 -0400 Subject: [PATCH 36/38] chore(main): release 1.150.2 (#2734) * chore(main): release 1.150.2 * chore: generate libraries at Thu May 7 18:32:56 UTC 2026 --------- Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: cloud-java-bot --- CHANGELOG.md | 13 +++++++++++++ README.md | 6 +++--- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 9 files changed, 34 insertions(+), 21 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c8247d9be..dcd6ad089 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## [1.150.2](https://github.com/googleapis/java-pubsub/compare/v1.150.1...v1.150.2) (2026-05-07) + + +### Bug Fixes + +* **deps:** Update the Java code generator (gapic-generator-java) to 2.72.0 ([a9b68a2](https://github.com/googleapis/java-pubsub/commit/a9b68a20208246b435739a1169d240a55c89695c)) + + +### Dependencies + +* Update dependency com.google.cloud:sdk-platform-java-config to v3.62.0 ([#2729](https://github.com/googleapis/java-pubsub/issues/2729)) ([77e0c65](https://github.com/googleapis/java-pubsub/commit/77e0c652c73a2fb790f01b76f2f32d95092188cb)) +* Update googleapis/google-cloud-java action to v1.86.0 ([#2727](https://github.com/googleapis/java-pubsub/issues/2727)) ([3da5b3b](https://github.com/googleapis/java-pubsub/commit/3da5b3baa1c4d97e58208b3c1de5533f2b10bf40)) + ## [1.150.1](https://github.com/googleapis/java-pubsub/compare/v1.150.0...v1.150.1) (2026-04-14) diff --git a/README.md b/README.md index 23cc2bcc8..c0da639a9 100644 --- a/README.md +++ b/README.md @@ -58,13 +58,13 @@ implementation 'com.google.cloud:google-cloud-pubsub' If you are using Gradle without BOM, add this to your dependencies: ```Groovy -implementation 'com.google.cloud:google-cloud-pubsub:1.150.1' +implementation 'com.google.cloud:google-cloud-pubsub:1.150.2' ``` If you are using SBT, add this to your dependencies: ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.150.1" +libraryDependencies += "com.google.cloud" % "google-cloud-pubsub" % "1.150.2" ``` ## Authentication @@ -401,7 +401,7 @@ Java is a registered trademark of Oracle and/or its affiliates. [javadocs]: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/history [stability-image]: https://img.shields.io/badge/stability-stable-green [maven-version-image]: https://img.shields.io/maven-central/v/com.google.cloud/google-cloud-pubsub.svg -[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.150.1 +[maven-version-link]: https://central.sonatype.com/artifact/com.google.cloud/google-cloud-pubsub/1.150.2 [authentication]: https://github.com/googleapis/google-cloud-java#authentication [auth-scopes]: https://developers.google.com/identity/protocols/oauth2/scopes [predefined-iam-roles]: https://cloud.google.com/iam/docs/understanding-roles#predefined_roles diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index a0c7174c9..1a5163e14 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.150.2-SNAPSHOT + 1.150.2 pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.150.2-SNAPSHOT + 1.150.2 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.2-SNAPSHOT + 1.132.2 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.2-SNAPSHOT + 1.132.2 diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index 58d1ee969..00252e835 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.150.2-SNAPSHOT + 1.150.2 jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.150.2-SNAPSHOT + 1.150.2 google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index 6a2ac7d05..a1f92025e 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.2-SNAPSHOT + 1.132.2 grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.2-SNAPSHOT + 1.150.2 diff --git a/pom.xml b/pom.xml index 36b20be83..b38165167 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.150.2-SNAPSHOT + 1.150.2 Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.2-SNAPSHOT + 1.132.2 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.2-SNAPSHOT + 1.132.2 com.google.cloud google-cloud-pubsub - 1.150.2-SNAPSHOT + 1.150.2 diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index 9d08e37e4..805918806 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.2-SNAPSHOT + 1.132.2 proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.2-SNAPSHOT + 1.150.2 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 928a28a33..5d67ea6fe 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.150.2-SNAPSHOT + 1.150.2 diff --git a/versions.txt b/versions.txt index 8efc8a823..d0e2d916f 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.150.1:1.150.2-SNAPSHOT -grpc-google-cloud-pubsub-v1:1.132.1:1.132.2-SNAPSHOT -proto-google-cloud-pubsub-v1:1.132.1:1.132.2-SNAPSHOT +google-cloud-pubsub:1.150.2:1.150.2 +grpc-google-cloud-pubsub-v1:1.132.2:1.132.2 +proto-google-cloud-pubsub-v1:1.132.2:1.132.2 From 1c78534e1ccad40f8abb10174c4f2e4c7eace35b Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Thu, 7 May 2026 15:50:31 -0400 Subject: [PATCH 37/38] chore(main): release 1.150.3-SNAPSHOT (#2735) Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> --- google-cloud-pubsub-bom/pom.xml | 8 ++++---- google-cloud-pubsub/pom.xml | 4 ++-- grpc-google-cloud-pubsub-v1/pom.xml | 4 ++-- pom.xml | 8 ++++---- proto-google-cloud-pubsub-v1/pom.xml | 4 ++-- samples/snapshot/pom.xml | 2 +- versions.txt | 6 +++--- 7 files changed, 18 insertions(+), 18 deletions(-) diff --git a/google-cloud-pubsub-bom/pom.xml b/google-cloud-pubsub-bom/pom.xml index 1a5163e14..6da6aad59 100644 --- a/google-cloud-pubsub-bom/pom.xml +++ b/google-cloud-pubsub-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub-bom - 1.150.2 + 1.150.3-SNAPSHOT pom com.google.cloud @@ -52,17 +52,17 @@ com.google.cloud google-cloud-pubsub - 1.150.2 + 1.150.3-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.2 + 1.132.3-SNAPSHOT com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.2 + 1.132.3-SNAPSHOT diff --git a/google-cloud-pubsub/pom.xml b/google-cloud-pubsub/pom.xml index 00252e835..a0d5f9483 100644 --- a/google-cloud-pubsub/pom.xml +++ b/google-cloud-pubsub/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-pubsub - 1.150.2 + 1.150.3-SNAPSHOT jar Google Cloud Pub/Sub https://github.com/googleapis/java-pubsub @@ -11,7 +11,7 @@ com.google.cloud google-cloud-pubsub-parent - 1.150.2 + 1.150.3-SNAPSHOT google-cloud-pubsub diff --git a/grpc-google-cloud-pubsub-v1/pom.xml b/grpc-google-cloud-pubsub-v1/pom.xml index a1f92025e..d84a02a07 100644 --- a/grpc-google-cloud-pubsub-v1/pom.xml +++ b/grpc-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.2 + 1.132.3-SNAPSHOT grpc-google-cloud-pubsub-v1 GRPC library for grpc-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.2 + 1.150.3-SNAPSHOT diff --git a/pom.xml b/pom.xml index b38165167..8d7ea2816 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-pubsub-parent pom - 1.150.2 + 1.150.3-SNAPSHOT Google Cloud Pub/Sub Parent https://github.com/googleapis/java-pubsub @@ -69,17 +69,17 @@ com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.2 + 1.132.3-SNAPSHOT com.google.api.grpc grpc-google-cloud-pubsub-v1 - 1.132.2 + 1.132.3-SNAPSHOT com.google.cloud google-cloud-pubsub - 1.150.2 + 1.150.3-SNAPSHOT diff --git a/proto-google-cloud-pubsub-v1/pom.xml b/proto-google-cloud-pubsub-v1/pom.xml index 805918806..3588ea34e 100644 --- a/proto-google-cloud-pubsub-v1/pom.xml +++ b/proto-google-cloud-pubsub-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-pubsub-v1 - 1.132.2 + 1.132.3-SNAPSHOT proto-google-cloud-pubsub-v1 PROTO library for proto-google-cloud-pubsub-v1 com.google.cloud google-cloud-pubsub-parent - 1.150.2 + 1.150.3-SNAPSHOT diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index 5d67ea6fe..432ce85de 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -43,7 +43,7 @@ com.google.cloud google-cloud-pubsub - 1.150.2 + 1.150.3-SNAPSHOT diff --git a/versions.txt b/versions.txt index d0e2d916f..55484585a 100644 --- a/versions.txt +++ b/versions.txt @@ -1,6 +1,6 @@ # Format: # module:released-version:current-version -google-cloud-pubsub:1.150.2:1.150.2 -grpc-google-cloud-pubsub-v1:1.132.2:1.132.2 -proto-google-cloud-pubsub-v1:1.132.2:1.132.2 +google-cloud-pubsub:1.150.2:1.150.3-SNAPSHOT +grpc-google-cloud-pubsub-v1:1.132.2:1.132.3-SNAPSHOT +proto-google-cloud-pubsub-v1:1.132.2:1.132.3-SNAPSHOT From ba2b8a32c584e9a263d432beb691ab984e830ffa Mon Sep 17 00:00:00 2001 From: Mike Eltsufin Date: Fri, 8 May 2026 10:34:57 -0400 Subject: [PATCH 38/38] chore: add deprecation notice to README post migration to the monorepo (#2737) Added deprecation notice for the repository. --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index c0da639a9..1a8adf4e3 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,6 @@ +**_THIS REPOSITORY IS DEPRECATED. ALL OF ITS CONTENT AND HISTORY HAS BEEN MOVED TO [GOOGLE-CLOUD-JAVA](https://github.com/googleapis/google-cloud-java/tree/main/java-pubsub)_** + + # Google Cloud Pub/Sub Client for Java Java idiomatic client for [Cloud Pub/Sub][product-docs].