@Generated(value="by gapic-generator-java") public class SubscriptionAdminClient extends Object implements com.google.api.gax.core.BackgroundResource
This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName name = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
TopicName topic = TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]");
PushConfig pushConfig = PushConfig.newBuilder().build();
int ackDeadlineSeconds = 2135351438;
Subscription response =
subscriptionAdminClient.createSubscription(name, topic, pushConfig, ackDeadlineSeconds);
}
Note: close() needs to be called on the SubscriptionAdminClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().
The surface of this class includes several types of Java methods for each of the API's methods:
See the individual methods for example code.
Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.
This class can be customized by passing in a custom instance of SubscriptionAdminSettings to create(). For example:
To customize credentials:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
SubscriptionAdminSettings subscriptionAdminSettings =
SubscriptionAdminSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
.build();
SubscriptionAdminClient subscriptionAdminClient =
SubscriptionAdminClient.create(subscriptionAdminSettings);
To customize the endpoint:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
SubscriptionAdminSettings subscriptionAdminSettings =
SubscriptionAdminSettings.newBuilder().setEndpoint(myEndpoint).build();
SubscriptionAdminClient subscriptionAdminClient =
SubscriptionAdminClient.create(subscriptionAdminSettings);
To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
SubscriptionAdminSettings subscriptionAdminSettings =
SubscriptionAdminSettings.newHttpJsonBuilder().build();
SubscriptionAdminClient subscriptionAdminClient =
SubscriptionAdminClient.create(subscriptionAdminSettings);
Please refer to the GitHub repository's samples for more quickstart code snippets.
Modifier and Type | Class and Description |
---|---|
static class |
SubscriptionAdminClient.ListSnapshotsFixedSizeCollection |
static class |
SubscriptionAdminClient.ListSnapshotsPage |
static class |
SubscriptionAdminClient.ListSnapshotsPagedResponse |
static class |
SubscriptionAdminClient.ListSubscriptionsFixedSizeCollection |
static class |
SubscriptionAdminClient.ListSubscriptionsPage |
static class |
SubscriptionAdminClient.ListSubscriptionsPagedResponse |
Modifier | Constructor and Description |
---|---|
protected |
SubscriptionAdminClient(SubscriberStub stub) |
protected |
SubscriptionAdminClient(SubscriptionAdminSettings settings)
Constructs an instance of SubscriptionAdminClient, using the given settings.
|
Modifier and Type | Method and Description |
---|---|
void |
acknowledge(AcknowledgeRequest request)
Acknowledges the messages associated with the `ack_ids` in the `AcknowledgeRequest`.
|
void |
acknowledge(ProjectSubscriptionName subscription,
List<String> ackIds)
Deprecated.
Use
#acknowledge(SubscriptionName, List instead. |
void |
acknowledge(String subscription,
List<String> ackIds)
Acknowledges the messages associated with the `ack_ids` in the `AcknowledgeRequest`.
|
void |
acknowledge(SubscriptionName subscription,
List<String> ackIds)
Acknowledges the messages associated with the `ack_ids` in the `AcknowledgeRequest`.
|
com.google.api.gax.rpc.UnaryCallable<AcknowledgeRequest,com.google.protobuf.Empty> |
acknowledgeCallable()
Acknowledges the messages associated with the `ack_ids` in the `AcknowledgeRequest`.
|
boolean |
awaitTermination(long duration,
TimeUnit unit) |
void |
close() |
static SubscriptionAdminClient |
create()
Constructs an instance of SubscriptionAdminClient with default settings.
|
static SubscriptionAdminClient |
create(SubscriberStub stub)
Constructs an instance of SubscriptionAdminClient, using the given stub for making calls.
|
static SubscriptionAdminClient |
create(SubscriptionAdminSettings settings)
Constructs an instance of SubscriptionAdminClient, using the given settings.
|
Snapshot |
createSnapshot(CreateSnapshotRequest request)
Creates a snapshot from the requested subscription.
|
Snapshot |
createSnapshot(ProjectSnapshotName name,
ProjectSubscriptionName subscription)
Deprecated.
Use Use
createSnapshot(SnapshotName, SubscriptionName) instead. |
Snapshot |
createSnapshot(ProjectSnapshotName name,
String subscription)
Deprecated.
Use Use
createSnapshot(SnapshotName, String) instead. |
Snapshot |
createSnapshot(SnapshotName name,
String subscription)
Creates a snapshot from the requested subscription.
|
Snapshot |
createSnapshot(SnapshotName name,
SubscriptionName subscription)
Creates a snapshot from the requested subscription.
|
Snapshot |
createSnapshot(String name,
ProjectSubscriptionName subscription)
Deprecated.
Use Use
createSnapshot(String, SubscriptionName) instead. |
Snapshot |
createSnapshot(String name,
String subscription)
Creates a snapshot from the requested subscription.
|
Snapshot |
createSnapshot(String name,
SubscriptionName subscription)
Creates a snapshot from the requested subscription.
|
com.google.api.gax.rpc.UnaryCallable<CreateSnapshotRequest,Snapshot> |
createSnapshotCallable()
Creates a snapshot from the requested subscription.
|
Subscription |
createSubscription(ProjectSubscriptionName name,
ProjectTopicName topic,
PushConfig pushConfig,
int ackDeadlineSeconds)
Deprecated.
|
Subscription |
createSubscription(ProjectSubscriptionName name,
String topic,
PushConfig pushConfig,
int ackDeadlineSeconds)
Deprecated.
|
Subscription |
createSubscription(ProjectSubscriptionName name,
TopicName topic,
PushConfig pushConfig,
int ackDeadlineSeconds)
Deprecated.
|
Subscription |
createSubscription(String name,
String topic,
PushConfig pushConfig,
int ackDeadlineSeconds)
Creates a subscription to a given topic.
|
Subscription |
createSubscription(String name,
TopicName topic,
PushConfig pushConfig,
int ackDeadlineSeconds)
Creates a subscription to a given topic.
|
Subscription |
createSubscription(Subscription request)
Creates a subscription to a given topic.
|
Subscription |
createSubscription(SubscriptionName name,
String topic,
PushConfig pushConfig,
int ackDeadlineSeconds)
Creates a subscription to a given topic.
|
Subscription |
createSubscription(SubscriptionName name,
TopicName topic,
PushConfig pushConfig,
int ackDeadlineSeconds)
Creates a subscription to a given topic.
|
com.google.api.gax.rpc.UnaryCallable<Subscription,Subscription> |
createSubscriptionCallable()
Creates a subscription to a given topic.
|
void |
deleteSnapshot(DeleteSnapshotRequest request)
Removes an existing snapshot.
|
void |
deleteSnapshot(ProjectSnapshotName snapshot)
Deprecated.
Use Use
deleteSnapshot(SnapshotName) instead. |
void |
deleteSnapshot(SnapshotName snapshot)
Removes an existing snapshot.
|
void |
deleteSnapshot(String snapshot)
Removes an existing snapshot.
|
com.google.api.gax.rpc.UnaryCallable<DeleteSnapshotRequest,com.google.protobuf.Empty> |
deleteSnapshotCallable()
Removes an existing snapshot.
|
void |
deleteSubscription(DeleteSubscriptionRequest request)
Deletes an existing subscription.
|
void |
deleteSubscription(ProjectSubscriptionName subscription)
Deprecated.
Use
deleteSubscription(SubscriptionName) instead. |
void |
deleteSubscription(String subscription)
Deletes an existing subscription.
|
void |
deleteSubscription(SubscriptionName subscription)
Deletes an existing subscription.
|
com.google.api.gax.rpc.UnaryCallable<DeleteSubscriptionRequest,com.google.protobuf.Empty> |
deleteSubscriptionCallable()
Deletes an existing subscription.
|
com.google.iam.v1.Policy |
getIamPolicy(com.google.iam.v1.GetIamPolicyRequest request)
Gets the access control policy for a resource.
|
com.google.iam.v1.Policy |
getIamPolicy(String resource)
Deprecated.
Use
getIamPolicy(GetIamPolicyRequest) instead. |
com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.GetIamPolicyRequest,com.google.iam.v1.Policy> |
getIamPolicyCallable()
Gets the access control policy for a resource.
|
SubscriptionAdminSettings |
getSettings() |
Snapshot |
getSnapshot(GetSnapshotRequest request)
Gets the configuration details of a snapshot.
|
Snapshot |
getSnapshot(ProjectSnapshotName snapshot)
Deprecated.
Use Use
getSnapshot(SnapshotName) instead. |
Snapshot |
getSnapshot(SnapshotName snapshot)
Gets the configuration details of a snapshot.
|
Snapshot |
getSnapshot(String snapshot)
Gets the configuration details of a snapshot.
|
com.google.api.gax.rpc.UnaryCallable<GetSnapshotRequest,Snapshot> |
getSnapshotCallable()
Gets the configuration details of a snapshot.
|
SubscriberStub |
getStub() |
Subscription |
getSubscription(GetSubscriptionRequest request)
Gets the configuration details of a subscription.
|
Subscription |
getSubscription(ProjectSubscriptionName subscription)
Deprecated.
Use
getSubscription(SubscriptionName) instead. |
Subscription |
getSubscription(String subscription)
Gets the configuration details of a subscription.
|
Subscription |
getSubscription(SubscriptionName subscription)
Gets the configuration details of a subscription.
|
com.google.api.gax.rpc.UnaryCallable<GetSubscriptionRequest,Subscription> |
getSubscriptionCallable()
Gets the configuration details of a subscription.
|
boolean |
isShutdown() |
boolean |
isTerminated() |
SubscriptionAdminClient.ListSnapshotsPagedResponse |
listSnapshots(ListSnapshotsRequest request)
Lists the existing snapshots.
|
SubscriptionAdminClient.ListSnapshotsPagedResponse |
listSnapshots(ProjectName project)
Lists the existing snapshots.
|
SubscriptionAdminClient.ListSnapshotsPagedResponse |
listSnapshots(String project)
Lists the existing snapshots.
|
com.google.api.gax.rpc.UnaryCallable<ListSnapshotsRequest,ListSnapshotsResponse> |
listSnapshotsCallable()
Lists the existing snapshots.
|
com.google.api.gax.rpc.UnaryCallable<ListSnapshotsRequest,SubscriptionAdminClient.ListSnapshotsPagedResponse> |
listSnapshotsPagedCallable()
Lists the existing snapshots.
|
SubscriptionAdminClient.ListSubscriptionsPagedResponse |
listSubscriptions(ListSubscriptionsRequest request)
Lists matching subscriptions.
|
SubscriptionAdminClient.ListSubscriptionsPagedResponse |
listSubscriptions(ProjectName project)
Lists matching subscriptions.
|
SubscriptionAdminClient.ListSubscriptionsPagedResponse |
listSubscriptions(String project)
Lists matching subscriptions.
|
com.google.api.gax.rpc.UnaryCallable<ListSubscriptionsRequest,ListSubscriptionsResponse> |
listSubscriptionsCallable()
Lists matching subscriptions.
|
com.google.api.gax.rpc.UnaryCallable<ListSubscriptionsRequest,SubscriptionAdminClient.ListSubscriptionsPagedResponse> |
listSubscriptionsPagedCallable()
Lists matching subscriptions.
|
void |
modifyAckDeadline(ModifyAckDeadlineRequest request)
Modifies the ack deadline for a specific message.
|
void |
modifyAckDeadline(String subscription,
List<String> ackIds,
int ackDeadlineSeconds)
Modifies the ack deadline for a specific message.
|
void |
modifyAckDeadline(SubscriptionName subscription,
List<String> ackIds,
int ackDeadlineSeconds)
Modifies the ack deadline for a specific message.
|
com.google.api.gax.rpc.UnaryCallable<ModifyAckDeadlineRequest,com.google.protobuf.Empty> |
modifyAckDeadlineCallable()
Modifies the ack deadline for a specific message.
|
void |
modifyPushConfig(ModifyPushConfigRequest request)
Modifies the `PushConfig` for a specified subscription.
|
void |
modifyPushConfig(ProjectSubscriptionName subscription,
PushConfig pushConfig)
Deprecated.
Use
modifyPushConfig(SubscriptionName, PushConfig) instead. |
void |
modifyPushConfig(String subscription,
PushConfig pushConfig)
Modifies the `PushConfig` for a specified subscription.
|
void |
modifyPushConfig(SubscriptionName subscription,
PushConfig pushConfig)
Modifies the `PushConfig` for a specified subscription.
|
com.google.api.gax.rpc.UnaryCallable<ModifyPushConfigRequest,com.google.protobuf.Empty> |
modifyPushConfigCallable()
Modifies the `PushConfig` for a specified subscription.
|
PullResponse |
pull(ProjectSubscriptionName subscription,
int maxMessages)
Deprecated.
Use
pull(SubscriptionName, int) instead. |
PullResponse |
pull(PullRequest request)
Pulls messages from the server.
|
PullResponse |
pull(String subscription,
boolean returnImmediately,
int maxMessages)
Pulls messages from the server.
|
PullResponse |
pull(String subscription,
int maxMessages)
Pulls messages from the server.
|
PullResponse |
pull(SubscriptionName subscription,
boolean returnImmediately,
int maxMessages)
Pulls messages from the server.
|
PullResponse |
pull(SubscriptionName subscription,
int maxMessages)
Pulls messages from the server.
|
com.google.api.gax.rpc.UnaryCallable<PullRequest,PullResponse> |
pullCallable()
Pulls messages from the server.
|
SeekResponse |
seek(SeekRequest request)
Seeks an existing subscription to a point in time or to a given snapshot, whichever is provided
in the request.
|
com.google.api.gax.rpc.UnaryCallable<SeekRequest,SeekResponse> |
seekCallable()
Seeks an existing subscription to a point in time or to a given snapshot, whichever is provided
in the request.
|
com.google.iam.v1.Policy |
setIamPolicy(com.google.iam.v1.SetIamPolicyRequest request)
Sets the access control policy on the specified resource.
|
com.google.iam.v1.Policy |
setIamPolicy(String resource,
com.google.iam.v1.Policy policy)
Deprecated.
Use
setIamPolicy(SetIamPolicyRequest) instead. |
com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.SetIamPolicyRequest,com.google.iam.v1.Policy> |
setIamPolicyCallable()
Sets the access control policy on the specified resource.
|
void |
shutdown() |
void |
shutdownNow() |
com.google.api.gax.rpc.BidiStreamingCallable<StreamingPullRequest,StreamingPullResponse> |
streamingPullCallable()
Establishes a stream with the server, which sends messages down to the client.
|
com.google.iam.v1.TestIamPermissionsResponse |
testIamPermissions(String resource,
List<String> permissions)
Deprecated.
Use
testIamPermissions(TestIamPermissionsRequest) instead. |
com.google.iam.v1.TestIamPermissionsResponse |
testIamPermissions(com.google.iam.v1.TestIamPermissionsRequest request)
Returns permissions that a caller has on the specified resource.
|
com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.TestIamPermissionsRequest,com.google.iam.v1.TestIamPermissionsResponse> |
testIamPermissionsCallable()
Returns permissions that a caller has on the specified resource.
|
Snapshot |
updateSnapshot(Snapshot snapshot,
com.google.protobuf.FieldMask updateMask)
Updates an existing snapshot.
|
Snapshot |
updateSnapshot(UpdateSnapshotRequest request)
Updates an existing snapshot.
|
com.google.api.gax.rpc.UnaryCallable<UpdateSnapshotRequest,Snapshot> |
updateSnapshotCallable()
Updates an existing snapshot.
|
Subscription |
updateSubscription(Subscription subscription,
com.google.protobuf.FieldMask updateMask)
Updates an existing subscription.
|
Subscription |
updateSubscription(UpdateSubscriptionRequest request)
Updates an existing subscription.
|
com.google.api.gax.rpc.UnaryCallable<UpdateSubscriptionRequest,Subscription> |
updateSubscriptionCallable()
Updates an existing subscription.
|
protected SubscriptionAdminClient(SubscriptionAdminSettings settings) throws IOException
IOException
protected SubscriptionAdminClient(SubscriberStub stub)
public static final SubscriptionAdminClient create() throws IOException
IOException
public static final SubscriptionAdminClient create(SubscriptionAdminSettings settings) throws IOException
IOException
public static final SubscriptionAdminClient create(SubscriberStub stub)
public final SubscriptionAdminSettings getSettings()
public SubscriberStub getStub()
public final Subscription createSubscription(SubscriptionName name, TopicName topic, PushConfig pushConfig, int ackDeadlineSeconds)
If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName name = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
TopicName topic = TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]");
PushConfig pushConfig = PushConfig.newBuilder().build();
int ackDeadlineSeconds = 2135351438;
Subscription response =
subscriptionAdminClient.createSubscription(name, topic, pushConfig, ackDeadlineSeconds);
}
name
- Required. The name of the subscription. It must have the format
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must start with a
letter, and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), underscores
(`_`), periods (`.`), tildes (`~`), plus (`+`) or percent signs (`%`). It must be between 3
and 255 characters in length, and it must not start with `"goog"`.topic
- Required. The name of the topic from which this subscription is receiving
messages. Format is `projects/{project}/topics/{topic}`. The value of this field will be
`_deleted-topic_` if the topic has been deleted.pushConfig
- If push delivery is used with this subscription, this field is used to
configure it.ackDeadlineSeconds
- 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 acknowledged, it is considered to be
_outstanding_. During that time period, the message will not be redelivered (on a
best-effort basis).
For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used.
For push delivery, this value is also used to set the request timeout for the call to the push endpoint.
If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Subscription createSubscription(SubscriptionName name, String topic, PushConfig pushConfig, int ackDeadlineSeconds)
If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName name = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
String topic = TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]").toString();
PushConfig pushConfig = PushConfig.newBuilder().build();
int ackDeadlineSeconds = 2135351438;
Subscription response =
subscriptionAdminClient.createSubscription(name, topic, pushConfig, ackDeadlineSeconds);
}
name
- Required. The name of the subscription. It must have the format
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must start with a
letter, and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), underscores
(`_`), periods (`.`), tildes (`~`), plus (`+`) or percent signs (`%`). It must be between 3
and 255 characters in length, and it must not start with `"goog"`.topic
- Required. The name of the topic from which this subscription is receiving
messages. Format is `projects/{project}/topics/{topic}`. The value of this field will be
`_deleted-topic_` if the topic has been deleted.pushConfig
- If push delivery is used with this subscription, this field is used to
configure it.ackDeadlineSeconds
- 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 acknowledged, it is considered to be
_outstanding_. During that time period, the message will not be redelivered (on a
best-effort basis).
For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used.
For push delivery, this value is also used to set the request timeout for the call to the push endpoint.
If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Subscription createSubscription(String name, TopicName topic, PushConfig pushConfig, int ackDeadlineSeconds)
If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String name = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
TopicName topic = TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]");
PushConfig pushConfig = PushConfig.newBuilder().build();
int ackDeadlineSeconds = 2135351438;
Subscription response =
subscriptionAdminClient.createSubscription(name, topic, pushConfig, ackDeadlineSeconds);
}
name
- Required. The name of the subscription. It must have the format
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must start with a
letter, and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), underscores
(`_`), periods (`.`), tildes (`~`), plus (`+`) or percent signs (`%`). It must be between 3
and 255 characters in length, and it must not start with `"goog"`.topic
- Required. The name of the topic from which this subscription is receiving
messages. Format is `projects/{project}/topics/{topic}`. The value of this field will be
`_deleted-topic_` if the topic has been deleted.pushConfig
- If push delivery is used with this subscription, this field is used to
configure it.ackDeadlineSeconds
- 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 acknowledged, it is considered to be
_outstanding_. During that time period, the message will not be redelivered (on a
best-effort basis).
For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used.
For push delivery, this value is also used to set the request timeout for the call to the push endpoint.
If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Subscription createSubscription(String name, String topic, PushConfig pushConfig, int ackDeadlineSeconds)
If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String name = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
String topic = TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]").toString();
PushConfig pushConfig = PushConfig.newBuilder().build();
int ackDeadlineSeconds = 2135351438;
Subscription response =
subscriptionAdminClient.createSubscription(name, topic, pushConfig, ackDeadlineSeconds);
}
name
- Required. The name of the subscription. It must have the format
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must start with a
letter, and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), underscores
(`_`), periods (`.`), tildes (`~`), plus (`+`) or percent signs (`%`). It must be between 3
and 255 characters in length, and it must not start with `"goog"`.topic
- Required. The name of the topic from which this subscription is receiving
messages. Format is `projects/{project}/topics/{topic}`. The value of this field will be
`_deleted-topic_` if the topic has been deleted.pushConfig
- If push delivery is used with this subscription, this field is used to
configure it.ackDeadlineSeconds
- 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 acknowledged, it is considered to be
_outstanding_. During that time period, the message will not be redelivered (on a
best-effort basis).
For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used.
For push delivery, this value is also used to set the request timeout for the call to the push endpoint.
If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Subscription createSubscription(Subscription request)
If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
Subscription request =
Subscription.newBuilder()
.setName(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.setTopic(TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]").toString())
.setPushConfig(PushConfig.newBuilder().build())
.setBigqueryConfig(BigQueryConfig.newBuilder().build())
.setCloudStorageConfig(CloudStorageConfig.newBuilder().build())
.setAckDeadlineSeconds(2135351438)
.setRetainAckedMessages(true)
.setMessageRetentionDuration(Duration.newBuilder().build())
.putAllLabels(new HashMap<String, String>())
.setEnableMessageOrdering(true)
.setExpirationPolicy(ExpirationPolicy.newBuilder().build())
.setFilter("filter-1274492040")
.setDeadLetterPolicy(DeadLetterPolicy.newBuilder().build())
.setRetryPolicy(RetryPolicy.newBuilder().build())
.setDetached(true)
.setEnableExactlyOnceDelivery(true)
.setTopicMessageRetentionDuration(Duration.newBuilder().build())
.build();
Subscription response = subscriptionAdminClient.createSubscription(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final Subscription createSubscription(ProjectSubscriptionName name, ProjectTopicName topic, PushConfig pushConfig, int ackDeadlineSeconds)
createSubscription(SubscriptionName, TopicName, PushConfig, int)
instead.If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format](https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSubscriptionName name = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
ProjectTopicName topic = ProjectTopicName.of("[PROJECT]", "[TOPIC]");
PushConfig pushConfig = PushConfig.newBuilder().build();
int ackDeadlineSeconds = 0;
Subscription response = subscriptionAdminClient.createSubscription(name, topic, pushConfig, ackDeadlineSeconds);
}
name
- Required. The name of the subscription. It must have the format
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must start with a
letter, and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), underscores
(`_`), periods (`.`), tildes (`~`), plus (`+`) or percent signs (`%`). It must be between 3
and 255 characters in length, and it must not start with `"goog"`.topic
- Required. The name of the topic from which this subscription is receiving
messages. Format is `projects/{project}/topics/{topic}`. The value of this field will be
`_deleted-topic_` if the topic has been deleted.pushConfig
- If push delivery is used with this subscription, this field is used to
configure it. An empty `pushConfig` signifies that the subscriber will pull and ack
messages using API methods.ackDeadlineSeconds
- 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 acknowledged, it is considered to be
<i>outstanding</i>. During that time period, the message will not be
redelivered (on a best-effort basis).
For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used.
For push delivery, this value is also used to set the request timeout for the call to the push endpoint.
If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.
com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final Subscription createSubscription(ProjectSubscriptionName name, String topic, PushConfig pushConfig, int ackDeadlineSeconds)
createSubscription(SubscriptionName, String, PushConfig, int)
instead.If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSubscriptionName name = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
String topic = TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]").toString();
PushConfig pushConfig = PushConfig.newBuilder().build();
int ackDeadlineSeconds = 2135351438;
Subscription response =
subscriptionAdminClient.createSubscription(name, topic, pushConfig, ackDeadlineSeconds);
}
name
- Required. The name of the subscription. It must have the format
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must start with a
letter, and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), underscores
(`_`), periods (`.`), tildes (`~`), plus (`+`) or percent signs (`%`). It must be between 3
and 255 characters in length, and it must not start with `"goog"`.topic
- Required. The name of the topic from which this subscription is receiving
messages. Format is `projects/{project}/topics/{topic}`. The value of this field will be
`_deleted-topic_` if the topic has been deleted.pushConfig
- If push delivery is used with this subscription, this field is used to
configure it. An empty `pushConfig` signifies that the subscriber will pull and ack
messages using API methods.ackDeadlineSeconds
- 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 acknowledged, it is considered to be
<i>outstanding</i>. During that time period, the message will not be
redelivered (on a best-effort basis).
For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used.
For push delivery, this value is also used to set the request timeout for the call to the push endpoint.
If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.
@Deprecated public final Subscription createSubscription(ProjectSubscriptionName name, TopicName topic, PushConfig pushConfig, int ackDeadlineSeconds)
createSubscription(SubscriptionName, TopicName, PushConfig, int)
instead.If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSubscriptionName name = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
TopicName topic = TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]");
PushConfig pushConfig = PushConfig.newBuilder().build();
int ackDeadlineSeconds = 2135351438;
Subscription response =
subscriptionAdminClient.createSubscription(name, topic, pushConfig, ackDeadlineSeconds);
}
name
- Required. The name of the subscription. It must have the format
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must start with a
letter, and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), underscores
(`_`), periods (`.`), tildes (`~`), plus (`+`) or percent signs (`%`). It must be between 3
and 255 characters in length, and it must not start with `"goog"`.topic
- Required. The name of the topic from which this subscription is receiving
messages. Format is `projects/{project}/topics/{topic}`. The value of this field will be
`_deleted-topic_` if the topic has been deleted.pushConfig
- If push delivery is used with this subscription, this field is used to
configure it. An empty `pushConfig` signifies that the subscriber will pull and ack
messages using API methods.ackDeadlineSeconds
- 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 acknowledged, it is considered to be
<i>outstanding</i>. During that time period, the message will not be
redelivered (on a best-effort basis).
For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used.
For push delivery, this value is also used to set the request timeout for the call to the push endpoint.
If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<Subscription,Subscription> createSubscriptionCallable()
If the name is not provided in the request, the server will assign a random name for this subscription on the same project as the topic, conforming to the [resource name format] (https://cloud.google.com/pubsub/docs/admin#resource_names). The generated name is populated in the returned Subscription object. Note that for REST API requests, you must specify a name in the request.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
Subscription request =
Subscription.newBuilder()
.setName(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.setTopic(TopicName.ofProjectTopicName("[PROJECT]", "[TOPIC]").toString())
.setPushConfig(PushConfig.newBuilder().build())
.setBigqueryConfig(BigQueryConfig.newBuilder().build())
.setCloudStorageConfig(CloudStorageConfig.newBuilder().build())
.setAckDeadlineSeconds(2135351438)
.setRetainAckedMessages(true)
.setMessageRetentionDuration(Duration.newBuilder().build())
.putAllLabels(new HashMap<String, String>())
.setEnableMessageOrdering(true)
.setExpirationPolicy(ExpirationPolicy.newBuilder().build())
.setFilter("filter-1274492040")
.setDeadLetterPolicy(DeadLetterPolicy.newBuilder().build())
.setRetryPolicy(RetryPolicy.newBuilder().build())
.setDetached(true)
.setEnableExactlyOnceDelivery(true)
.setTopicMessageRetentionDuration(Duration.newBuilder().build())
.build();
ApiFuture<Subscription> future =
subscriptionAdminClient.createSubscriptionCallable().futureCall(request);
// Do something.
Subscription response = future.get();
}
public final Subscription getSubscription(SubscriptionName subscription)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
Subscription response = subscriptionAdminClient.getSubscription(subscription);
}
subscription
- Required. The name of the subscription to get. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Subscription getSubscription(String subscription)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
Subscription response = subscriptionAdminClient.getSubscription(subscription);
}
subscription
- Required. The name of the subscription to get. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Subscription getSubscription(GetSubscriptionRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
GetSubscriptionRequest request =
GetSubscriptionRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.build();
Subscription response = subscriptionAdminClient.getSubscription(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final Subscription getSubscription(ProjectSubscriptionName subscription)
getSubscription(SubscriptionName)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSubscriptionName subscription = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
Subscription response = subscriptionAdminClient.getSubscription(subscription);
}
subscription
- Required. The name of the subscription to get. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<GetSubscriptionRequest,Subscription> getSubscriptionCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
GetSubscriptionRequest request =
GetSubscriptionRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.build();
ApiFuture<Subscription> future =
subscriptionAdminClient.getSubscriptionCallable().futureCall(request);
// Do something.
Subscription response = future.get();
}
public final Subscription updateSubscription(Subscription subscription, com.google.protobuf.FieldMask updateMask)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
Subscription subscription = Subscription.newBuilder().build();
FieldMask updateMask = FieldMask.newBuilder().build();
Subscription response = subscriptionAdminClient.updateSubscription(subscription, updateMask);
}
subscription
- Required. The updated subscription object.updateMask
- Required. Indicates which fields in the provided subscription to update. Must
be specified and non-empty.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Subscription updateSubscription(UpdateSubscriptionRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
UpdateSubscriptionRequest request =
UpdateSubscriptionRequest.newBuilder()
.setSubscription(Subscription.newBuilder().build())
.setUpdateMask(FieldMask.newBuilder().build())
.build();
Subscription response = subscriptionAdminClient.updateSubscription(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<UpdateSubscriptionRequest,Subscription> updateSubscriptionCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
UpdateSubscriptionRequest request =
UpdateSubscriptionRequest.newBuilder()
.setSubscription(Subscription.newBuilder().build())
.setUpdateMask(FieldMask.newBuilder().build())
.build();
ApiFuture<Subscription> future =
subscriptionAdminClient.updateSubscriptionCallable().futureCall(request);
// Do something.
Subscription response = future.get();
}
public final SubscriptionAdminClient.ListSubscriptionsPagedResponse listSubscriptions(ProjectName project)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectName project = ProjectName.of("[PROJECT]");
for (Subscription element : subscriptionAdminClient.listSubscriptions(project).iterateAll()) {
// doThingsWith(element);
}
}
project
- Required. The name of the project in which to list subscriptions. Format is
`projects/{project-id}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final SubscriptionAdminClient.ListSubscriptionsPagedResponse listSubscriptions(String project)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String project = ProjectName.of("[PROJECT]").toString();
for (Subscription element : subscriptionAdminClient.listSubscriptions(project).iterateAll()) {
// doThingsWith(element);
}
}
project
- Required. The name of the project in which to list subscriptions. Format is
`projects/{project-id}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final SubscriptionAdminClient.ListSubscriptionsPagedResponse listSubscriptions(ListSubscriptionsRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ListSubscriptionsRequest request =
ListSubscriptionsRequest.newBuilder()
.setProject(ProjectName.of("[PROJECT]").toString())
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
for (Subscription element : subscriptionAdminClient.listSubscriptions(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<ListSubscriptionsRequest,SubscriptionAdminClient.ListSubscriptionsPagedResponse> listSubscriptionsPagedCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ListSubscriptionsRequest request =
ListSubscriptionsRequest.newBuilder()
.setProject(ProjectName.of("[PROJECT]").toString())
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
ApiFuture<Subscription> future =
subscriptionAdminClient.listSubscriptionsPagedCallable().futureCall(request);
// Do something.
for (Subscription element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final com.google.api.gax.rpc.UnaryCallable<ListSubscriptionsRequest,ListSubscriptionsResponse> listSubscriptionsCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ListSubscriptionsRequest request =
ListSubscriptionsRequest.newBuilder()
.setProject(ProjectName.of("[PROJECT]").toString())
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
while (true) {
ListSubscriptionsResponse response =
subscriptionAdminClient.listSubscriptionsCallable().call(request);
for (Subscription element : response.getSubscriptionsList()) {
// doThingsWith(element);
}
String nextPageToken = response.getNextPageToken();
if (!Strings.isNullOrEmpty(nextPageToken)) {
request = request.toBuilder().setPageToken(nextPageToken).build();
} else {
break;
}
}
}
public final void deleteSubscription(SubscriptionName subscription)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
subscriptionAdminClient.deleteSubscription(subscription);
}
subscription
- Required. The subscription to delete. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void deleteSubscription(String subscription)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
subscriptionAdminClient.deleteSubscription(subscription);
}
subscription
- Required. The subscription to delete. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void deleteSubscription(DeleteSubscriptionRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
DeleteSubscriptionRequest request =
DeleteSubscriptionRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.build();
subscriptionAdminClient.deleteSubscription(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final void deleteSubscription(ProjectSubscriptionName subscription)
deleteSubscription(SubscriptionName)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSubscriptionName subscription = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
subscriptionAdminClient.deleteSubscription(subscription);
}
subscription
- Required. The subscription to delete. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<DeleteSubscriptionRequest,com.google.protobuf.Empty> deleteSubscriptionCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
DeleteSubscriptionRequest request =
DeleteSubscriptionRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.build();
ApiFuture<Empty> future =
subscriptionAdminClient.deleteSubscriptionCallable().futureCall(request);
// Do something.
future.get();
}
public final void modifyAckDeadline(SubscriptionName subscription, List<String> ackIds, int ackDeadlineSeconds)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
List<String> ackIds = new ArrayList<>();
int ackDeadlineSeconds = 2135351438;
subscriptionAdminClient.modifyAckDeadline(subscription, ackIds, ackDeadlineSeconds);
}
subscription
- Required. The name of the subscription. Format is
`projects/{project}/subscriptions/{sub}`.ackIds
- Required. List of acknowledgment IDs.ackDeadlineSeconds
- Required. The new ack deadline with respect to the time this request
was sent to the Pub/Sub system. For example, if the value is 10, the new ack deadline will
expire 10 seconds after the `ModifyAckDeadline` call was made. Specifying zero might
immediately make the message available for delivery to another subscriber client. This
typically results in an increase in the rate of message redeliveries (that is, duplicates).
The minimum deadline you can specify is 0 seconds. The maximum deadline you can specify is
600 seconds (10 minutes).com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void modifyAckDeadline(String subscription, List<String> ackIds, int ackDeadlineSeconds)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
List<String> ackIds = new ArrayList<>();
int ackDeadlineSeconds = 2135351438;
subscriptionAdminClient.modifyAckDeadline(subscription, ackIds, ackDeadlineSeconds);
}
subscription
- Required. The name of the subscription. Format is
`projects/{project}/subscriptions/{sub}`.ackIds
- Required. List of acknowledgment IDs.ackDeadlineSeconds
- Required. The new ack deadline with respect to the time this request
was sent to the Pub/Sub system. For example, if the value is 10, the new ack deadline will
expire 10 seconds after the `ModifyAckDeadline` call was made. Specifying zero might
immediately make the message available for delivery to another subscriber client. This
typically results in an increase in the rate of message redeliveries (that is, duplicates).
The minimum deadline you can specify is 0 seconds. The maximum deadline you can specify is
600 seconds (10 minutes).com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void modifyAckDeadline(ModifyAckDeadlineRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ModifyAckDeadlineRequest request =
ModifyAckDeadlineRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.addAllAckIds(new ArrayList<String>())
.setAckDeadlineSeconds(2135351438)
.build();
subscriptionAdminClient.modifyAckDeadline(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<ModifyAckDeadlineRequest,com.google.protobuf.Empty> modifyAckDeadlineCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ModifyAckDeadlineRequest request =
ModifyAckDeadlineRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.addAllAckIds(new ArrayList<String>())
.setAckDeadlineSeconds(2135351438)
.build();
ApiFuture<Empty> future =
subscriptionAdminClient.modifyAckDeadlineCallable().futureCall(request);
// Do something.
future.get();
}
public final void acknowledge(SubscriptionName subscription, List<String> ackIds)
Acknowledging a message whose ack deadline has expired may succeed, but such a message may be redelivered later. Acknowledging a message more than once will not result in an error.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
List<String> ackIds = new ArrayList<>();
subscriptionAdminClient.acknowledge(subscription, ackIds);
}
subscription
- Required. The subscription whose message is being acknowledged. Format is
`projects/{project}/subscriptions/{sub}`.ackIds
- Required. The acknowledgment ID for the messages being acknowledged that was
returned by the Pub/Sub system in the `Pull` response. Must not be empty.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void acknowledge(String subscription, List<String> ackIds)
Acknowledging a message whose ack deadline has expired may succeed, but such a message may be redelivered later. Acknowledging a message more than once will not result in an error.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
List<String> ackIds = new ArrayList<>();
subscriptionAdminClient.acknowledge(subscription, ackIds);
}
subscription
- Required. The subscription whose message is being acknowledged. Format is
`projects/{project}/subscriptions/{sub}`.ackIds
- Required. The acknowledgment ID for the messages being acknowledged that was
returned by the Pub/Sub system in the `Pull` response. Must not be empty.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void acknowledge(AcknowledgeRequest request)
Acknowledging a message whose ack deadline has expired may succeed, but such a message may be redelivered later. Acknowledging a message more than once will not result in an error.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
AcknowledgeRequest request =
AcknowledgeRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.addAllAckIds(new ArrayList<String>())
.build();
subscriptionAdminClient.acknowledge(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final void acknowledge(ProjectSubscriptionName subscription, List<String> ackIds)
#acknowledge(SubscriptionName, List)
instead.Acknowledging a message whose ack deadline has expired may succeed, but such a message may be redelivered later. Acknowledging a message more than once will not result in an error.
Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSubscriptionName subscription = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
List<String> ackIds = new ArrayList<>();
subscriptionAdminClient.acknowledge(subscription, ackIds);
}
subscription
- Required. The subscription whose message is being acknowledged. Format is
`projects/{project}/subscriptions/{sub}`.ackIds
- Required. The acknowledgment ID for the messages being acknowledged that was
returned by the Pub/Sub system in the `Pull` response. Must not be empty.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<AcknowledgeRequest,com.google.protobuf.Empty> acknowledgeCallable()
Acknowledging a message whose ack deadline has expired may succeed, but such a message may be redelivered later. Acknowledging a message more than once will not result in an error.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
AcknowledgeRequest request =
AcknowledgeRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.addAllAckIds(new ArrayList<String>())
.build();
ApiFuture<Empty> future = subscriptionAdminClient.acknowledgeCallable().futureCall(request);
// Do something.
future.get();
}
public final PullResponse pull(SubscriptionName subscription, int maxMessages)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
int maxMessages = 496131527;
PullResponse response = subscriptionAdminClient.pull(subscription, maxMessages);
}
subscription
- Required. The subscription from which messages should be pulled. Format is
`projects/{project}/subscriptions/{sub}`.maxMessages
- Required. The maximum number of messages to return for this request. Must be
a positive integer. The Pub/Sub system may return fewer than the number specified.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final PullResponse pull(String subscription, int maxMessages)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
int maxMessages = 496131527;
PullResponse response = subscriptionAdminClient.pull(subscription, maxMessages);
}
subscription
- Required. The subscription from which messages should be pulled. Format is
`projects/{project}/subscriptions/{sub}`.maxMessages
- Required. The maximum number of messages to return for this request. Must be
a positive integer. The Pub/Sub system may return fewer than the number specified.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final PullResponse pull(SubscriptionName subscription, boolean returnImmediately, int maxMessages)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
boolean returnImmediately = true;
int maxMessages = 496131527;
PullResponse response =
subscriptionAdminClient.pull(subscription, returnImmediately, maxMessages);
}
subscription
- Required. The subscription from which messages should be pulled. Format is
`projects/{project}/subscriptions/{sub}`.returnImmediately
- Optional. If this field set to true, the system will respond
immediately even if it there are no messages available to return in the `Pull` response.
Otherwise, the system may wait (for a bounded amount of time) until at least one message is
available, rather than returning no messages. Warning: setting this field to `true` is
discouraged because it adversely impacts the performance of `Pull` operations. We recommend
that users do not set this field.maxMessages
- Required. The maximum number of messages to return for this request. Must be
a positive integer. The Pub/Sub system may return fewer than the number specified.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final PullResponse pull(String subscription, boolean returnImmediately, int maxMessages)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
boolean returnImmediately = true;
int maxMessages = 496131527;
PullResponse response =
subscriptionAdminClient.pull(subscription, returnImmediately, maxMessages);
}
subscription
- Required. The subscription from which messages should be pulled. Format is
`projects/{project}/subscriptions/{sub}`.returnImmediately
- Optional. If this field set to true, the system will respond
immediately even if it there are no messages available to return in the `Pull` response.
Otherwise, the system may wait (for a bounded amount of time) until at least one message is
available, rather than returning no messages. Warning: setting this field to `true` is
discouraged because it adversely impacts the performance of `Pull` operations. We recommend
that users do not set this field.maxMessages
- Required. The maximum number of messages to return for this request. Must be
a positive integer. The Pub/Sub system may return fewer than the number specified.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final PullResponse pull(PullRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
PullRequest request =
PullRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.setReturnImmediately(true)
.setMaxMessages(496131527)
.build();
PullResponse response = subscriptionAdminClient.pull(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final PullResponse pull(ProjectSubscriptionName subscription, int maxMessages)
pull(SubscriptionName, int)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSubscriptionName subscription = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
int maxMessages = 496131527;
PullResponse response = subscriptionAdminClient.pull(subscription, maxMessages);
}
subscription
- Required. The subscription from which messages should be pulled. Format is
`projects/{project}/subscriptions/{sub}`.maxMessages
- Required. The maximum number of messages to return for this request. Must be
a positive integer. The Pub/Sub system may return fewer than the number specified.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<PullRequest,PullResponse> pullCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
PullRequest request =
PullRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.setReturnImmediately(true)
.setMaxMessages(496131527)
.build();
ApiFuture<PullResponse> future = subscriptionAdminClient.pullCallable().futureCall(request);
// Do something.
PullResponse response = future.get();
}
public final com.google.api.gax.rpc.BidiStreamingCallable<StreamingPullRequest,StreamingPullResponse> streamingPullCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
BidiStream<StreamingPullRequest, StreamingPullResponse> bidiStream =
subscriptionAdminClient.streamingPullCallable().call();
StreamingPullRequest request =
StreamingPullRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.addAllAckIds(new ArrayList<String>())
.addAllModifyDeadlineSeconds(new ArrayList<Integer>())
.addAllModifyDeadlineAckIds(new ArrayList<String>())
.setStreamAckDeadlineSeconds(1875467245)
.setClientId("clientId908408390")
.setMaxOutstandingMessages(-1315266996)
.setMaxOutstandingBytes(-2103098517)
.build();
bidiStream.send(request);
for (StreamingPullResponse response : bidiStream) {
// Do something when a response is received.
}
}
public final void modifyPushConfig(SubscriptionName subscription, PushConfig pushConfig)
This may be used to change a push subscription to a pull one (signified by an empty `PushConfig`) or vice versa, or change the endpoint URL and other attributes of a push subscription. Messages will accumulate for delivery continuously through the call regardless of changes to the `PushConfig`.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
PushConfig pushConfig = PushConfig.newBuilder().build();
subscriptionAdminClient.modifyPushConfig(subscription, pushConfig);
}
subscription
- Required. The name of the subscription. Format is
`projects/{project}/subscriptions/{sub}`.pushConfig
- Required. The push configuration for future deliveries.
An empty `pushConfig` indicates that the Pub/Sub system should stop pushing messages from the given subscription and allow messages to be pulled and acknowledged - effectively pausing the subscription if `Pull` or `StreamingPull` is not called.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void modifyPushConfig(String subscription, PushConfig pushConfig)
This may be used to change a push subscription to a pull one (signified by an empty `PushConfig`) or vice versa, or change the endpoint URL and other attributes of a push subscription. Messages will accumulate for delivery continuously through the call regardless of changes to the `PushConfig`.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
PushConfig pushConfig = PushConfig.newBuilder().build();
subscriptionAdminClient.modifyPushConfig(subscription, pushConfig);
}
subscription
- Required. The name of the subscription. Format is
`projects/{project}/subscriptions/{sub}`.pushConfig
- Required. The push configuration for future deliveries.
An empty `pushConfig` indicates that the Pub/Sub system should stop pushing messages from the given subscription and allow messages to be pulled and acknowledged - effectively pausing the subscription if `Pull` or `StreamingPull` is not called.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void modifyPushConfig(ModifyPushConfigRequest request)
This may be used to change a push subscription to a pull one (signified by an empty `PushConfig`) or vice versa, or change the endpoint URL and other attributes of a push subscription. Messages will accumulate for delivery continuously through the call regardless of changes to the `PushConfig`.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ModifyPushConfigRequest request =
ModifyPushConfigRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.setPushConfig(PushConfig.newBuilder().build())
.build();
subscriptionAdminClient.modifyPushConfig(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final void modifyPushConfig(ProjectSubscriptionName subscription, PushConfig pushConfig)
modifyPushConfig(SubscriptionName, PushConfig)
instead.This may be used to change a push subscription to a pull one (signified by an empty `PushConfig`) or vice versa, or change the endpoint URL and other attributes of a push subscription. Messages will accumulate for delivery continuously through the call regardless of changes to the `PushConfig`.
Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSubscriptionName subscription = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
PushConfig pushConfig = PushConfig.newBuilder().build();
subscriptionAdminClient.modifyPushConfig(subscription, pushConfig);
}
subscription
- Required. The name of the subscription. Format is
`projects/{project}/subscriptions/{sub}`.pushConfig
- Required. The push configuration for future deliveries.
An empty `pushConfig` indicates that the Pub/Sub system should stop pushing messages from the given subscription and allow messages to be pulled and acknowledged - effectively pausing the subscription if `Pull` or `StreamingPull` is not called.
com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<ModifyPushConfigRequest,com.google.protobuf.Empty> modifyPushConfigCallable()
This may be used to change a push subscription to a pull one (signified by an empty `PushConfig`) or vice versa, or change the endpoint URL and other attributes of a push subscription. Messages will accumulate for delivery continuously through the call regardless of changes to the `PushConfig`.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ModifyPushConfigRequest request =
ModifyPushConfigRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.setPushConfig(PushConfig.newBuilder().build())
.build();
ApiFuture<Empty> future =
subscriptionAdminClient.modifyPushConfigCallable().futureCall(request);
// Do something.
future.get();
}
public final Snapshot getSnapshot(SnapshotName snapshot)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SnapshotName snapshot = SnapshotName.of("[PROJECT]", "[SNAPSHOT]");
Snapshot response = subscriptionAdminClient.getSnapshot(snapshot);
}
snapshot
- Required. The name of the snapshot to get. Format is
`projects/{project}/snapshots/{snap}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Snapshot getSnapshot(String snapshot)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String snapshot = SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString();
Snapshot response = subscriptionAdminClient.getSnapshot(snapshot);
}
snapshot
- Required. The name of the snapshot to get. Format is
`projects/{project}/snapshots/{snap}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Snapshot getSnapshot(GetSnapshotRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
GetSnapshotRequest request =
GetSnapshotRequest.newBuilder()
.setSnapshot(SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString())
.build();
Snapshot response = subscriptionAdminClient.getSnapshot(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final Snapshot getSnapshot(ProjectSnapshotName snapshot)
getSnapshot(SnapshotName)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSnapshotName snapshot = ProjectSnapshotName.of("[PROJECT]", "[SNAPSHOT]");
Snapshot response = subscriptionAdminClient.getSnapshot(snapshot);
}
snapshot
- Required. The name of the snapshot to get. Format is
`projects/{project}/snapshots/{snap}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<GetSnapshotRequest,Snapshot> getSnapshotCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
GetSnapshotRequest request =
GetSnapshotRequest.newBuilder()
.setSnapshot(SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString())
.build();
ApiFuture<Snapshot> future =
subscriptionAdminClient.getSnapshotCallable().futureCall(request);
// Do something.
Snapshot response = future.get();
}
public final SubscriptionAdminClient.ListSnapshotsPagedResponse listSnapshots(ProjectName project)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectName project = ProjectName.of("[PROJECT]");
for (Snapshot element : subscriptionAdminClient.listSnapshots(project).iterateAll()) {
// doThingsWith(element);
}
}
project
- Required. The name of the project in which to list snapshots. Format is
`projects/{project-id}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final SubscriptionAdminClient.ListSnapshotsPagedResponse listSnapshots(String project)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String project = ProjectName.of("[PROJECT]").toString();
for (Snapshot element : subscriptionAdminClient.listSnapshots(project).iterateAll()) {
// doThingsWith(element);
}
}
project
- Required. The name of the project in which to list snapshots. Format is
`projects/{project-id}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final SubscriptionAdminClient.ListSnapshotsPagedResponse listSnapshots(ListSnapshotsRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ListSnapshotsRequest request =
ListSnapshotsRequest.newBuilder()
.setProject(ProjectName.of("[PROJECT]").toString())
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
for (Snapshot element : subscriptionAdminClient.listSnapshots(request).iterateAll()) {
// doThingsWith(element);
}
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<ListSnapshotsRequest,SubscriptionAdminClient.ListSnapshotsPagedResponse> listSnapshotsPagedCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ListSnapshotsRequest request =
ListSnapshotsRequest.newBuilder()
.setProject(ProjectName.of("[PROJECT]").toString())
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
ApiFuture<Snapshot> future =
subscriptionAdminClient.listSnapshotsPagedCallable().futureCall(request);
// Do something.
for (Snapshot element : future.get().iterateAll()) {
// doThingsWith(element);
}
}
public final com.google.api.gax.rpc.UnaryCallable<ListSnapshotsRequest,ListSnapshotsResponse> listSnapshotsCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ListSnapshotsRequest request =
ListSnapshotsRequest.newBuilder()
.setProject(ProjectName.of("[PROJECT]").toString())
.setPageSize(883849137)
.setPageToken("pageToken873572522")
.build();
while (true) {
ListSnapshotsResponse response =
subscriptionAdminClient.listSnapshotsCallable().call(request);
for (Snapshot element : response.getSnapshotsList()) {
// doThingsWith(element);
}
String nextPageToken = response.getNextPageToken();
if (!Strings.isNullOrEmpty(nextPageToken)) {
request = request.toBuilder().setPageToken(nextPageToken).build();
} else {
break;
}
}
}
public final Snapshot createSnapshot(SnapshotName name, SubscriptionName subscription)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SnapshotName name = SnapshotName.of("[PROJECT]", "[SNAPSHOT]");
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
Snapshot response = subscriptionAdminClient.createSnapshot(name, subscription);
}
name
- Required. User-provided name for this snapshot. If the name is not provided in the
request, the server will assign a random name for this snapshot on the same project as the
subscription. Note that for REST API requests, you must specify a name. See the [resource
name rules](https://cloud.google.com/pubsub/docs/admin#resource_names). Format is
`projects/{project}/snapshots/{snap}`.subscription
- Required. The subscription whose backlog the snapshot retains.
Specifically, the created snapshot is guaranteed to retain: (a) The existing backlog on the
subscription. More precisely, this is defined as the messages in the subscription's backlog
that are unacknowledged upon the successful completion of the `CreateSnapshot` request; as
well as: (b) Any messages published to the subscription's topic following the successful
completion of the CreateSnapshot request. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Snapshot createSnapshot(SnapshotName name, String subscription)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SnapshotName name = SnapshotName.of("[PROJECT]", "[SNAPSHOT]");
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
Snapshot response = subscriptionAdminClient.createSnapshot(name, subscription);
}
name
- Required. User-provided name for this snapshot. If the name is not provided in the
request, the server will assign a random name for this snapshot on the same project as the
subscription. Note that for REST API requests, you must specify a name. See the [resource
name rules](https://cloud.google.com/pubsub/docs/admin#resource_names). Format is
`projects/{project}/snapshots/{snap}`.subscription
- Required. The subscription whose backlog the snapshot retains.
Specifically, the created snapshot is guaranteed to retain: (a) The existing backlog on the
subscription. More precisely, this is defined as the messages in the subscription's backlog
that are unacknowledged upon the successful completion of the `CreateSnapshot` request; as
well as: (b) Any messages published to the subscription's topic following the successful
completion of the CreateSnapshot request. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Snapshot createSnapshot(String name, SubscriptionName subscription)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String name = SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString();
SubscriptionName subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
Snapshot response = subscriptionAdminClient.createSnapshot(name, subscription);
}
name
- Required. User-provided name for this snapshot. If the name is not provided in the
request, the server will assign a random name for this snapshot on the same project as the
subscription. Note that for REST API requests, you must specify a name. See the [resource
name rules](https://cloud.google.com/pubsub/docs/admin#resource_names). Format is
`projects/{project}/snapshots/{snap}`.subscription
- Required. The subscription whose backlog the snapshot retains.
Specifically, the created snapshot is guaranteed to retain: (a) The existing backlog on the
subscription. More precisely, this is defined as the messages in the subscription's backlog
that are unacknowledged upon the successful completion of the `CreateSnapshot` request; as
well as: (b) Any messages published to the subscription's topic following the successful
completion of the CreateSnapshot request. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Snapshot createSnapshot(String name, String subscription)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String name = SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString();
String subscription = SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
Snapshot response = subscriptionAdminClient.createSnapshot(name, subscription);
}
name
- Required. User-provided name for this snapshot. If the name is not provided in the
request, the server will assign a random name for this snapshot on the same project as the
subscription. Note that for REST API requests, you must specify a name. See the [resource
name rules](https://cloud.google.com/pubsub/docs/admin#resource_names). Format is
`projects/{project}/snapshots/{snap}`.subscription
- Required. The subscription whose backlog the snapshot retains.
Specifically, the created snapshot is guaranteed to retain: (a) The existing backlog on the
subscription. More precisely, this is defined as the messages in the subscription's backlog
that are unacknowledged upon the successful completion of the `CreateSnapshot` request; as
well as: (b) Any messages published to the subscription's topic following the successful
completion of the CreateSnapshot request. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Snapshot createSnapshot(CreateSnapshotRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
CreateSnapshotRequest request =
CreateSnapshotRequest.newBuilder()
.setName(SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString())
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.putAllLabels(new HashMap<String, String>())
.build();
Snapshot response = subscriptionAdminClient.createSnapshot(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final Snapshot createSnapshot(ProjectSnapshotName name, ProjectSubscriptionName subscription)
createSnapshot(SnapshotName, SubscriptionName)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSnapshotName name = ProjectSnapshotName.of("[PROJECT]", "[SNAPSHOT]");
ProjectSubscriptionName subscription = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
Snapshot response = subscriptionAdminClient.createSnapshot(name, subscription);
}
name
- Required. User-provided name for this snapshot. If the name is not provided in the
request, the server will assign a random name for this snapshot on the same project as the
subscription. Note that for REST API requests, you must specify a name. See the <a
href="https://cloud.google.com/pubsub/docs/admin#resource_names"> resource name
rules</a>. Format is `projects/{project}/snapshots/{snap}`.subscription
- Required. The subscription whose backlog the snapshot retains.
Specifically, the created snapshot is guaranteed to retain: (a) The existing backlog on the
subscription. More precisely, this is defined as the messages in the subscription's backlog
that are unacknowledged upon the successful completion of the `CreateSnapshot` request; as
well as: (b) Any messages published to the subscription's topic following the successful
completion of the CreateSnapshot request. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final Snapshot createSnapshot(String name, ProjectSubscriptionName subscription)
createSnapshot(String, SubscriptionName)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String name = ProjectSnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString();
ProjectSubscriptionName subscription = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]");
Snapshot response = subscriptionAdminClient.createSnapshot(name, subscription);
}
name
- Required. User-provided name for this snapshot. If the name is not provided in the
request, the server will assign a random name for this snapshot on the same project as the
subscription. Note that for REST API requests, you must specify a name. See the <a
href="https://cloud.google.com/pubsub/docs/admin#resource_names"> resource name
rules</a>. Format is `projects/{project}/snapshots/{snap}`.subscription
- Required. The subscription whose backlog the snapshot retains.
Specifically, the created snapshot is guaranteed to retain: (a) The existing backlog on the
subscription. More precisely, this is defined as the messages in the subscription's backlog
that are unacknowledged upon the successful completion of the `CreateSnapshot` request; as
well as: (b) Any messages published to the subscription's topic following the successful
completion of the CreateSnapshot request. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final Snapshot createSnapshot(ProjectSnapshotName name, String subscription)
createSnapshot(SnapshotName, String)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSnapshotName name = ProjectSnapshotName.of("[PROJECT]", "[SNAPSHOT]");
String subscription = ProjectSubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString();
Snapshot response = subscriptionAdminClient.createSnapshot(name, subscription);
}
name
- Required. User-provided name for this snapshot. If the name is not provided in the
request, the server will assign a random name for this snapshot on the same project as the
subscription. Note that for REST API requests, you must specify a name. See the <a
href="https://cloud.google.com/pubsub/docs/admin#resource_names"> resource name
rules</a>. Format is `projects/{project}/snapshots/{snap}`.subscription
- Required. The subscription whose backlog the snapshot retains.
Specifically, the created snapshot is guaranteed to retain: (a) The existing backlog on the
subscription. More precisely, this is defined as the messages in the subscription's backlog
that are unacknowledged upon the successful completion of the `CreateSnapshot` request; as
well as: (b) Any messages published to the subscription's topic following the successful
completion of the CreateSnapshot request. Format is
`projects/{project}/subscriptions/{sub}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<CreateSnapshotRequest,Snapshot> createSnapshotCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
CreateSnapshotRequest request =
CreateSnapshotRequest.newBuilder()
.setName(SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString())
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.putAllLabels(new HashMap<String, String>())
.build();
ApiFuture<Snapshot> future =
subscriptionAdminClient.createSnapshotCallable().futureCall(request);
// Do something.
Snapshot response = future.get();
}
public final Snapshot updateSnapshot(Snapshot snapshot, com.google.protobuf.FieldMask updateMask)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
Snapshot snapshot = Snapshot.newBuilder().build();
FieldMask updateMask = FieldMask.newBuilder().build();
Snapshot response = subscriptionAdminClient.updateSnapshot(snapshot, updateMask);
}
snapshot
- Required. The updated snapshot object.updateMask
- Required. Indicates which fields in the provided snapshot to update. Must be
specified and non-empty.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final Snapshot updateSnapshot(UpdateSnapshotRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
UpdateSnapshotRequest request =
UpdateSnapshotRequest.newBuilder()
.setSnapshot(Snapshot.newBuilder().build())
.setUpdateMask(FieldMask.newBuilder().build())
.build();
Snapshot response = subscriptionAdminClient.updateSnapshot(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<UpdateSnapshotRequest,Snapshot> updateSnapshotCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
UpdateSnapshotRequest request =
UpdateSnapshotRequest.newBuilder()
.setSnapshot(Snapshot.newBuilder().build())
.setUpdateMask(FieldMask.newBuilder().build())
.build();
ApiFuture<Snapshot> future =
subscriptionAdminClient.updateSnapshotCallable().futureCall(request);
// Do something.
Snapshot response = future.get();
}
public final void deleteSnapshot(SnapshotName snapshot)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SnapshotName snapshot = SnapshotName.of("[PROJECT]", "[SNAPSHOT]");
subscriptionAdminClient.deleteSnapshot(snapshot);
}
snapshot
- Required. The name of the snapshot to delete. Format is
`projects/{project}/snapshots/{snap}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void deleteSnapshot(String snapshot)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String snapshot = SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString();
subscriptionAdminClient.deleteSnapshot(snapshot);
}
snapshot
- Required. The name of the snapshot to delete. Format is
`projects/{project}/snapshots/{snap}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final void deleteSnapshot(DeleteSnapshotRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
DeleteSnapshotRequest request =
DeleteSnapshotRequest.newBuilder()
.setSnapshot(SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString())
.build();
subscriptionAdminClient.deleteSnapshot(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final void deleteSnapshot(ProjectSnapshotName snapshot)
deleteSnapshot(SnapshotName)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
ProjectSnapshotName snapshot = ProjectSnapshotName.of("[PROJECT]", "[SNAPSHOT]");
subscriptionAdminClient.deleteSnapshot(snapshot);
}
snapshot
- Required. The name of the snapshot to delete. Format is
`projects/{project}/snapshots/{snap}`.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<DeleteSnapshotRequest,com.google.protobuf.Empty> deleteSnapshotCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
DeleteSnapshotRequest request =
DeleteSnapshotRequest.newBuilder()
.setSnapshot(SnapshotName.of("[PROJECT]", "[SNAPSHOT]").toString())
.build();
ApiFuture<Empty> future =
subscriptionAdminClient.deleteSnapshotCallable().futureCall(request);
// Do something.
future.get();
}
public final SeekResponse seek(SeekRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SeekRequest request =
SeekRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.build();
SeekResponse response = subscriptionAdminClient.seek(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<SeekRequest,SeekResponse> seekCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SeekRequest request =
SeekRequest.newBuilder()
.setSubscription(SubscriptionName.of("[PROJECT]", "[SUBSCRIPTION]").toString())
.build();
ApiFuture<SeekResponse> future = subscriptionAdminClient.seekCallable().futureCall(request);
// Do something.
SeekResponse response = future.get();
}
public final com.google.iam.v1.Policy setIamPolicy(com.google.iam.v1.SetIamPolicyRequest request)
Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SetIamPolicyRequest request =
SetIamPolicyRequest.newBuilder()
.setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
.setPolicy(Policy.newBuilder().build())
.setUpdateMask(FieldMask.newBuilder().build())
.build();
Policy response = subscriptionAdminClient.setIamPolicy(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final com.google.iam.v1.Policy setIamPolicy(String resource, com.google.iam.v1.Policy policy)
setIamPolicy(SetIamPolicyRequest)
instead.Can return Public Errors: NOT_FOUND, INVALID_ARGUMENT and PERMISSION_DENIED
Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String formattedResource = ProjectTopicName.format("[PROJECT]", "[TOPIC]");
Policy policy = Policy.newBuilder().build();
Policy response = subscriptionAdminClient.setIamPolicy(formattedResource, policy);
}
resource
- REQUIRED: The resource for which the policy is being specified. See the
operation documentation for the appropriate value for this field.policy
- REQUIRED: The complete policy to be applied to the `resource`. The size of the
policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud
Platform services (such as Projects) might reject them.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.SetIamPolicyRequest,com.google.iam.v1.Policy> setIamPolicyCallable()
Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
SetIamPolicyRequest request =
SetIamPolicyRequest.newBuilder()
.setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
.setPolicy(Policy.newBuilder().build())
.setUpdateMask(FieldMask.newBuilder().build())
.build();
ApiFuture<Policy> future = subscriptionAdminClient.setIamPolicyCallable().futureCall(request);
// Do something.
Policy response = future.get();
}
public final com.google.iam.v1.Policy getIamPolicy(com.google.iam.v1.GetIamPolicyRequest request)
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
GetIamPolicyRequest request =
GetIamPolicyRequest.newBuilder()
.setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
.setOptions(GetPolicyOptions.newBuilder().build())
.build();
Policy response = subscriptionAdminClient.getIamPolicy(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final com.google.iam.v1.Policy getIamPolicy(String resource)
getIamPolicy(GetIamPolicyRequest)
instead.Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String formattedResource = ProjectTopicName.format("[PROJECT]", "[TOPIC]");
Policy response = subscriptionAdminClient.getIamPolicy(formattedResource);
}
resource
- REQUIRED: The resource for which the policy is being requested. See the
operation documentation for the appropriate value for this field.com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.GetIamPolicyRequest,com.google.iam.v1.Policy> getIamPolicyCallable()
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
GetIamPolicyRequest request =
GetIamPolicyRequest.newBuilder()
.setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
.setOptions(GetPolicyOptions.newBuilder().build())
.build();
ApiFuture<Policy> future = subscriptionAdminClient.getIamPolicyCallable().futureCall(request);
// Do something.
Policy response = future.get();
}
public final com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(com.google.iam.v1.TestIamPermissionsRequest request)
Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
TestIamPermissionsRequest request =
TestIamPermissionsRequest.newBuilder()
.setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
.addAllPermissions(new ArrayList<String>())
.build();
TestIamPermissionsResponse response = subscriptionAdminClient.testIamPermissions(request);
}
request
- The request object containing all of the parameters for the API call.com.google.api.gax.rpc.ApiException
- if the remote call fails@Deprecated public final com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(String resource, List<String> permissions)
testIamPermissions(TestIamPermissionsRequest)
instead.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.
Sample code:
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
String formattedResource = ProjectTopicName.format("[PROJECT]", "[TOPIC]");
List<String> permissions = new ArrayList<>();
TestIamPermissionsResponse response = subscriptionAdminClient.testIamPermissions(formattedResource, permissions);
}
resource
- REQUIRED: The resource for which the policy detail is being requested. See the
operation documentation for the appropriate value for this field.permissions
- The set of permissions to check for the `resource`. Permissions with
wildcards (such as '*' or 'storage.*') are not allowed. For more information see
[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).com.google.api.gax.rpc.ApiException
- if the remote call failspublic final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.TestIamPermissionsRequest,com.google.iam.v1.TestIamPermissionsResponse> testIamPermissionsCallable()
Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.
Sample code:
// This snippet has been automatically generated and should be regarded as a code template only.
// It will require modifications to work:
// - It may require correct/in-range values for request initialization.
// - It may require specifying regional endpoints when creating the service client as shown in
// https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) {
TestIamPermissionsRequest request =
TestIamPermissionsRequest.newBuilder()
.setResource(SchemaName.of("[PROJECT]", "[SCHEMA]").toString())
.addAllPermissions(new ArrayList<String>())
.build();
ApiFuture<TestIamPermissionsResponse> future =
subscriptionAdminClient.testIamPermissionsCallable().futureCall(request);
// Do something.
TestIamPermissionsResponse response = future.get();
}
public final void close()
close
in interface AutoCloseable
public void shutdown()
shutdown
in interface com.google.api.gax.core.BackgroundResource
public boolean isShutdown()
isShutdown
in interface com.google.api.gax.core.BackgroundResource
public boolean isTerminated()
isTerminated
in interface com.google.api.gax.core.BackgroundResource
public void shutdownNow()
shutdownNow
in interface com.google.api.gax.core.BackgroundResource
public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException
awaitTermination
in interface com.google.api.gax.core.BackgroundResource
InterruptedException
Copyright © 2023 Google LLC. All rights reserved.