Class SubscriptionBuilder (2.11.0)
Note: Some or all of the information on this page might not apply
to Trusted Cloud. For a list of services that are available in
Trusted Cloud, see Services available for
Trusted Cloud .
Version 2.11.0keyboard_arrow_down
Create a Cloud Pub/Sub subscription configuration.
Makes it easier to create the protobuf messages consumed by SubscriptionAdminClient
. The main advantages are:
Use a fluent API to set multiple values when constructing complex objects.
Automatically compute the set of paths for update requests.
Constructors
SubscriptionBuilder()
Functions
set_push_config(PushConfigBuilder) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
PushConfigBuilder
Returns
Type
Description
SubscriptionBuilder &
set_push_config(PushConfigBuilder) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
PushConfigBuilder
Returns
Type
Description
SubscriptionBuilder &&
set_bigquery_config(BigQueryConfigBuilder) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
BigQueryConfigBuilder
Returns
Type
Description
SubscriptionBuilder &
set_bigquery_config(BigQueryConfigBuilder) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
BigQueryConfigBuilder
Returns
Type
Description
SubscriptionBuilder &&
set_ack_deadline(std::chrono::seconds) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
std::chrono::seconds
Returns
Type
Description
SubscriptionBuilder &
set_ack_deadline(std::chrono::seconds) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
std::chrono::seconds
Returns
Type
Description
SubscriptionBuilder &&
set_retain_acked_messages(bool) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
bool
Returns
Type
Description
SubscriptionBuilder &
set_retain_acked_messages(bool) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
bool
Returns
Type
Description
SubscriptionBuilder &&
set_message_retention_duration(std::chrono::duration< Rep, Period >) &
Setters for each protocol buffer field.
Parameters
Name
Description
d
std::chrono::duration< Rep, Period >
typename Rep
typename Period
Returns
Type
Description
SubscriptionBuilder &
set_message_retention_duration(std::chrono::duration< Rep, Period >) &&
Setters for each protocol buffer field.
Parameters
Name
Description
d
std::chrono::duration< Rep, Period >
typename Rep
typename Period
Returns
Type
Description
SubscriptionBuilder &&
add_label(std::string const &, std::string const &) &
Setters for each protocol buffer field.
Parameters
Name
Description
key
std::string const &
value
std::string const &
Returns
Type
Description
SubscriptionBuilder &
add_label(std::string const &, std::string const &) &&
Setters for each protocol buffer field.
Parameters
Name
Description
key
std::string const &
value
std::string const &
Returns
Type
Description
SubscriptionBuilder &&
set_labels(std::vector< std::pair< std::string, std::string > >) &
Setters for each protocol buffer field.
Parameter
Name
Description
new_labels
std::vector< std::pair< std::string, std::string > >
Returns
Type
Description
SubscriptionBuilder &
set_labels(std::vector< std::pair< std::string, std::string > >) &&
Setters for each protocol buffer field.
Parameter
Name
Description
new_labels
std::vector< std::pair< std::string, std::string > >
Returns
Type
Description
SubscriptionBuilder &&
clear_labels() &
Setters for each protocol buffer field.
Returns
Type
Description
SubscriptionBuilder &
clear_labels() &&
Setters for each protocol buffer field.
Returns
Type
Description
SubscriptionBuilder &&
enable_message_ordering(bool) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
bool
Returns
Type
Description
SubscriptionBuilder &
enable_message_ordering(bool) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
bool
Returns
Type
Description
SubscriptionBuilder &&
set_expiration_policy(google::pubsub::v1::ExpirationPolicy) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
google::pubsub::v1::ExpirationPolicy
Returns
Type
Description
SubscriptionBuilder &
set_expiration_policy(google::pubsub::v1::ExpirationPolicy) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
google::pubsub::v1::ExpirationPolicy
Returns
Type
Description
SubscriptionBuilder &&
set_filter(std::string) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
std::string
Returns
Type
Description
SubscriptionBuilder &
set_filter(std::string) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
std::string
Returns
Type
Description
SubscriptionBuilder &&
set_dead_letter_policy(google::pubsub::v1::DeadLetterPolicy) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
google::pubsub::v1::DeadLetterPolicy
Returns
Type
Description
SubscriptionBuilder &
set_dead_letter_policy(google::pubsub::v1::DeadLetterPolicy) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
google::pubsub::v1::DeadLetterPolicy
Returns
Type
Description
SubscriptionBuilder &&
clear_dead_letter_policy() &
Setters for each protocol buffer field.
Returns
Type
Description
SubscriptionBuilder &
clear_dead_letter_policy() &&
Setters for each protocol buffer field.
Returns
Type
Description
SubscriptionBuilder &&
set_retry_policy(google::pubsub::v1::RetryPolicy) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
google::pubsub::v1::RetryPolicy
Returns
Type
Description
SubscriptionBuilder &
set_retry_policy(google::pubsub::v1::RetryPolicy) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
google::pubsub::v1::RetryPolicy
Returns
Type
Description
SubscriptionBuilder &&
clear_retry_policy() &
Setters for each protocol buffer field.
Returns
Type
Description
SubscriptionBuilder &
clear_retry_policy() &&
Setters for each protocol buffer field.
Returns
Type
Description
SubscriptionBuilder &&
enable_exactly_once_delivery(bool) &
Setters for each protocol buffer field.
Parameter
Name
Description
v
bool
Returns
Type
Description
SubscriptionBuilder &
enable_exactly_once_delivery(bool) &&
Setters for each protocol buffer field.
Parameter
Name
Description
v
bool
Returns
Type
Description
SubscriptionBuilder &&
BuildUpdateRequest(Subscription const &) &&
Build a protocol buffer message to update an existing subscription.
Parameter
Name
Description
subscription
Subscription const &
Returns
Type
Description
google::pubsub::v1::UpdateSubscriptionRequest
BuildCreateRequest(Topic const &, Subscription const &) &&
Build a protocol buffer message to create a new subscription.
Parameters
Name
Description
topic
Topic const &
subscription
Subscription const &
Returns
Type
Description
google::pubsub::v1::Subscription
static MakeExpirationPolicy(std::chrono::duration< Rep, Period >)
Construct a google::pubsub::v1::ExpirationPolicy
using a C++ duration.
Parameters
Name
Description
d
std::chrono::duration< Rep, Period >
typename Rep
typename Period
Returns
Type
Description
google::pubsub::v1::ExpirationPolicy
static MakeDeadLetterPolicy(Topic const &, std::int32_t)
Construct a google::pubsub::v1::DeadLetterPolicy
.
Parameters
Name
Description
dead_letter_topic
Topic const &
max_delivery_attempts
std::int32_t
Returns
Type
Description
google::pubsub::v1::DeadLetterPolicy
static MakeRetryPolicy(std::chrono::duration< Rep1, Period1 >, std::chrono::duration< Rep2, Period2 >)
Construct a google::pubsub::v1::RetryPolicy
using C++ durations.
Parameters
Name
Description
minimum_backoff
std::chrono::duration< Rep1, Period1 >
maximum_backoff
std::chrono::duration< Rep2, Period2 >
typename Rep1
typename Period1
typename Rep2
typename Period2
Returns
Type
Description
google::pubsub::v1::RetryPolicy
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License , and code samples are licensed under the Apache 2.0 License . For details, see the Google Developers Site Policies . Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-14 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-14 UTC."],[[["\u003cp\u003eThis webpage details the \u003ccode\u003eSubscriptionBuilder\u003c/code\u003e class, which simplifies the creation of Cloud Pub/Sub subscription configurations for use with \u003ccode\u003eSubscriptionAdminClient\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eSubscriptionBuilder\u003c/code\u003e uses a fluent API, making it easier to set multiple values for complex objects and automatically compute update request paths.\u003c/p\u003e\n"],["\u003cp\u003eThe class offers numerous methods to configure various aspects of a subscription, including \u003ccode\u003eset_push_config\u003c/code\u003e, \u003ccode\u003eset_bigquery_config\u003c/code\u003e, \u003ccode\u003eset_ack_deadline\u003c/code\u003e, \u003ccode\u003eset_retain_acked_messages\u003c/code\u003e, and many others.\u003c/p\u003e\n"],["\u003cp\u003eStatic methods like \u003ccode\u003eMakeExpirationPolicy\u003c/code\u003e, \u003ccode\u003eMakeDeadLetterPolicy\u003c/code\u003e, and \u003ccode\u003eMakeRetryPolicy\u003c/code\u003e are provided as convenience functions for creating specific policy arguments for the \u003ccode\u003eset\u003c/code\u003e methods.\u003c/p\u003e\n"],["\u003cp\u003eThe document also provides links to every available version, ranging from the latest release candidate \u003ccode\u003e2.37.0-rc\u003c/code\u003e all the way down to \u003ccode\u003e2.11.0\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,[]]