target.apidocs.com.google.api.services.pubsub.model.Subscription.html Maven / Gradle / Ivy
Subscription (Cloud Pub/Sub API v1-rev20240918-2.0.0)
com.google.api.services.pubsub.model
Class Subscription
- java.lang.Object
-
- java.util.AbstractMap<String,Object>
-
- com.google.api.client.util.GenericData
-
- com.google.api.client.json.GenericJson
-
- com.google.api.services.pubsub.model.Subscription
-
public final class Subscription
extends com.google.api.client.json.GenericJson
A subscription resource. If none of `push_config`, `bigquery_config`, or `cloud_storage_config`
is set, then the subscriber will pull and ack messages using API methods. At most one of these
fields may be set.
This is the Java data model class that specifies how to parse/serialize into the JSON that is
transmitted over HTTP when working with the Cloud Pub/Sub API. For a detailed explanation see:
https://developers.google.com/api-client-library/java/google-http-java-client/json
- Author:
- Google, Inc.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.google.api.client.util.GenericData
com.google.api.client.util.GenericData.Flags
-
Nested classes/interfaces inherited from class java.util.AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
-
Constructor Summary
Constructors
Constructor and Description
Subscription()
-
Method Summary
-
Methods inherited from class com.google.api.client.json.GenericJson
getFactory, setFactory, toPrettyString, toString
-
Methods inherited from class com.google.api.client.util.GenericData
entrySet, equals, get, getClassInfo, getUnknownKeys, hashCode, put, putAll, remove, setUnknownKeys
-
Methods inherited from class java.util.AbstractMap
clear, containsKey, containsValue, isEmpty, keySet, size, values
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
-
Method Detail
-
getAckDeadlineSeconds
public Integer getAckDeadlineSeconds()
Optional. The approximate amount of time (on a best-effort basis) Pub/Sub waits for the
subscriber to acknowledge receipt before resending the message. In the interval after the
message is delivered and before it is 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.
- Returns:
- value or
null
for none
-
setAckDeadlineSeconds
public Subscription setAckDeadlineSeconds(Integer ackDeadlineSeconds)
Optional. The approximate amount of time (on a best-effort basis) Pub/Sub waits for the
subscriber to acknowledge receipt before resending the message. In the interval after the
message is delivered and before it is 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.
- Parameters:
ackDeadlineSeconds
- ackDeadlineSeconds or null
for none
-
getAnalyticsHubSubscriptionInfo
public AnalyticsHubSubscriptionInfo getAnalyticsHubSubscriptionInfo()
Output only. Information about the associated Analytics Hub subscription. Only set if the
subscritpion is created by Analytics Hub.
- Returns:
- value or
null
for none
-
setAnalyticsHubSubscriptionInfo
public Subscription setAnalyticsHubSubscriptionInfo(AnalyticsHubSubscriptionInfo analyticsHubSubscriptionInfo)
Output only. Information about the associated Analytics Hub subscription. Only set if the
subscritpion is created by Analytics Hub.
- Parameters:
analyticsHubSubscriptionInfo
- analyticsHubSubscriptionInfo or null
for none
-
getBigqueryConfig
public BigQueryConfig getBigqueryConfig()
Optional. If delivery to BigQuery is used with this subscription, this field is used to
configure it.
- Returns:
- value or
null
for none
-
setBigqueryConfig
public Subscription setBigqueryConfig(BigQueryConfig bigqueryConfig)
Optional. If delivery to BigQuery is used with this subscription, this field is used to
configure it.
- Parameters:
bigqueryConfig
- bigqueryConfig or null
for none
-
getCloudStorageConfig
public CloudStorageConfig getCloudStorageConfig()
Optional. If delivery to Google Cloud Storage is used with this subscription, this field is
used to configure it.
- Returns:
- value or
null
for none
-
setCloudStorageConfig
public Subscription setCloudStorageConfig(CloudStorageConfig cloudStorageConfig)
Optional. If delivery to Google Cloud Storage is used with this subscription, this field is
used to configure it.
- Parameters:
cloudStorageConfig
- cloudStorageConfig or null
for none
-
getDeadLetterPolicy
public DeadLetterPolicy getDeadLetterPolicy()
Optional. A policy that specifies the conditions for dead lettering messages in this
subscription. If dead_letter_policy is not set, dead lettering is disabled. The Pub/Sub service
account associated with this subscriptions's parent project (i.e.,
service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to
Acknowledge() messages on this subscription.
- Returns:
- value or
null
for none
-
setDeadLetterPolicy
public Subscription setDeadLetterPolicy(DeadLetterPolicy deadLetterPolicy)
Optional. A policy that specifies the conditions for dead lettering messages in this
subscription. If dead_letter_policy is not set, dead lettering is disabled. The Pub/Sub service
account associated with this subscriptions's parent project (i.e.,
service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to
Acknowledge() messages on this subscription.
- Parameters:
deadLetterPolicy
- deadLetterPolicy or null
for none
-
getDetached
public Boolean getDetached()
Optional. Indicates whether the subscription is detached from its topic. Detached subscriptions
don't receive messages from their topic and don't retain any backlog. `Pull` and
`StreamingPull` requests will return FAILED_PRECONDITION. If the subscription is a push
subscription, pushes to the endpoint will not be made.
- Returns:
- value or
null
for none
-
setDetached
public Subscription setDetached(Boolean detached)
Optional. Indicates whether the subscription is detached from its topic. Detached subscriptions
don't receive messages from their topic and don't retain any backlog. `Pull` and
`StreamingPull` requests will return FAILED_PRECONDITION. If the subscription is a push
subscription, pushes to the endpoint will not be made.
- Parameters:
detached
- detached or null
for none
-
getEnableExactlyOnceDelivery
public Boolean getEnableExactlyOnceDelivery()
Optional. If true, Pub/Sub provides the following guarantees for the delivery of a message with
a given value of `message_id` on this subscription: * The message sent to a subscriber is
guaranteed not to be resent before the message's acknowledgement deadline expires. * An
acknowledged message will not be resent to a subscriber. Note that subscribers may still
receive multiple copies of a message when `enable_exactly_once_delivery` is true if the message
was published multiple times by a publisher client. These copies are considered distinct by
Pub/Sub and have distinct `message_id` values.
- Returns:
- value or
null
for none
-
setEnableExactlyOnceDelivery
public Subscription setEnableExactlyOnceDelivery(Boolean enableExactlyOnceDelivery)
Optional. If true, Pub/Sub provides the following guarantees for the delivery of a message with
a given value of `message_id` on this subscription: * The message sent to a subscriber is
guaranteed not to be resent before the message's acknowledgement deadline expires. * An
acknowledged message will not be resent to a subscriber. Note that subscribers may still
receive multiple copies of a message when `enable_exactly_once_delivery` is true if the message
was published multiple times by a publisher client. These copies are considered distinct by
Pub/Sub and have distinct `message_id` values.
- Parameters:
enableExactlyOnceDelivery
- enableExactlyOnceDelivery or null
for none
-
getEnableMessageOrdering
public Boolean getEnableMessageOrdering()
Optional. If true, messages published with the same `ordering_key` in `PubsubMessage` will be
delivered to the subscribers in the order in which they are received by the Pub/Sub system.
Otherwise, they may be delivered in any order.
- Returns:
- value or
null
for none
-
setEnableMessageOrdering
public Subscription setEnableMessageOrdering(Boolean enableMessageOrdering)
Optional. If true, messages published with the same `ordering_key` in `PubsubMessage` will be
delivered to the subscribers in the order in which they are received by the Pub/Sub system.
Otherwise, they may be delivered in any order.
- Parameters:
enableMessageOrdering
- enableMessageOrdering or null
for none
-
getExpirationPolicy
public ExpirationPolicy getExpirationPolicy()
Optional. A policy that specifies the conditions for this subscription's expiration. A
subscription is considered active as long as any connected subscriber is successfully consuming
messages from the subscription or is issuing operations on the subscription. If
`expiration_policy` is not set, a *default policy* with `ttl` of 31 days will be used. The
minimum allowed value for `expiration_policy.ttl` is 1 day. If `expiration_policy` is set, but
`expiration_policy.ttl` is not set, the subscription never expires.
- Returns:
- value or
null
for none
-
setExpirationPolicy
public Subscription setExpirationPolicy(ExpirationPolicy expirationPolicy)
Optional. A policy that specifies the conditions for this subscription's expiration. A
subscription is considered active as long as any connected subscriber is successfully consuming
messages from the subscription or is issuing operations on the subscription. If
`expiration_policy` is not set, a *default policy* with `ttl` of 31 days will be used. The
minimum allowed value for `expiration_policy.ttl` is 1 day. If `expiration_policy` is set, but
`expiration_policy.ttl` is not set, the subscription never expires.
- Parameters:
expirationPolicy
- expirationPolicy or null
for none
-
getFilter
public String getFilter()
Optional. An expression written in the Pub/Sub [filter
language](https://cloud.google.com/pubsub/docs/filtering). If non-empty, then only
`PubsubMessage`s whose `attributes` field matches the filter are delivered on this
subscription. If empty, then no messages are filtered out.
- Returns:
- value or
null
for none
-
setFilter
public Subscription setFilter(String filter)
Optional. An expression written in the Pub/Sub [filter
language](https://cloud.google.com/pubsub/docs/filtering). If non-empty, then only
`PubsubMessage`s whose `attributes` field matches the filter are delivered on this
subscription. If empty, then no messages are filtered out.
- Parameters:
filter
- filter or null
for none
-
getLabels
public Map<String,String> getLabels()
Optional. See [Creating and managing labels](https://cloud.google.com/pubsub/docs/labels).
- Returns:
- value or
null
for none
-
setLabels
public Subscription setLabels(Map<String,String> labels)
Optional. See [Creating and managing labels](https://cloud.google.com/pubsub/docs/labels).
- Parameters:
labels
- labels or null
for none
-
getMessageRetentionDuration
public String getMessageRetentionDuration()
Optional. How long to retain unacknowledged messages in the subscription's backlog, from the
moment a message is published. If `retain_acked_messages` is true, then this also configures
the retention of acknowledged messages, and thus configures how far back in time a `Seek` can
be done. Defaults to 7 days. Cannot be more than 31 days or less than 10 minutes.
- Returns:
- value or
null
for none
-
setMessageRetentionDuration
public Subscription setMessageRetentionDuration(String messageRetentionDuration)
Optional. How long to retain unacknowledged messages in the subscription's backlog, from the
moment a message is published. If `retain_acked_messages` is true, then this also configures
the retention of acknowledged messages, and thus configures how far back in time a `Seek` can
be done. Defaults to 7 days. Cannot be more than 31 days or less than 10 minutes.
- Parameters:
messageRetentionDuration
- messageRetentionDuration or null
for none
-
getName
public String getName()
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"`.
- Returns:
- value or
null
for none
-
setName
public Subscription setName(String 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"`.
- Parameters:
name
- name or null
for none
-
getPushConfig
public PushConfig getPushConfig()
Optional. If push delivery is used with this subscription, this field is used to configure it.
- Returns:
- value or
null
for none
-
setPushConfig
public Subscription setPushConfig(PushConfig pushConfig)
Optional. If push delivery is used with this subscription, this field is used to configure it.
- Parameters:
pushConfig
- pushConfig or null
for none
-
getRetainAckedMessages
public Boolean getRetainAckedMessages()
Optional. Indicates whether to retain acknowledged messages. If true, then messages are not
expunged from the subscription's backlog, even if they are acknowledged, until they fall out of
the `message_retention_duration` window. This must be true if you would like to [`Seek` to a
timestamp] (https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) in the past to
replay previously-acknowledged messages.
- Returns:
- value or
null
for none
-
setRetainAckedMessages
public Subscription setRetainAckedMessages(Boolean retainAckedMessages)
Optional. Indicates whether to retain acknowledged messages. If true, then messages are not
expunged from the subscription's backlog, even if they are acknowledged, until they fall out of
the `message_retention_duration` window. This must be true if you would like to [`Seek` to a
timestamp] (https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) in the past to
replay previously-acknowledged messages.
- Parameters:
retainAckedMessages
- retainAckedMessages or null
for none
-
getRetryPolicy
public RetryPolicy getRetryPolicy()
Optional. A policy that specifies how Pub/Sub retries message delivery for this subscription.
If not set, the default retry policy is applied. This generally implies that messages will be
retried as soon as possible for healthy subscribers. RetryPolicy will be triggered on NACKs or
acknowledgement deadline exceeded events for a given message.
- Returns:
- value or
null
for none
-
setRetryPolicy
public Subscription setRetryPolicy(RetryPolicy retryPolicy)
Optional. A policy that specifies how Pub/Sub retries message delivery for this subscription.
If not set, the default retry policy is applied. This generally implies that messages will be
retried as soon as possible for healthy subscribers. RetryPolicy will be triggered on NACKs or
acknowledgement deadline exceeded events for a given message.
- Parameters:
retryPolicy
- retryPolicy or null
for none
-
getState
public String getState()
Output only. An output-only field indicating whether or not the subscription can receive
messages.
- Returns:
- value or
null
for none
-
setState
public Subscription setState(String state)
Output only. An output-only field indicating whether or not the subscription can receive
messages.
- Parameters:
state
- state or null
for none
-
getTopic
public String getTopic()
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.
- Returns:
- value or
null
for none
-
setTopic
public Subscription setTopic(String 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.
- Parameters:
topic
- topic or null
for none
-
getTopicMessageRetentionDuration
public String getTopicMessageRetentionDuration()
Output only. Indicates the minimum duration for which a message is retained after it is
published to the subscription's topic. If this field is set, messages published to the
subscription's topic in the last `topic_message_retention_duration` are always available to
subscribers. See the `message_retention_duration` field in `Topic`. This field is set only in
responses from the server; it is ignored if it is set in any requests.
- Returns:
- value or
null
for none
-
setTopicMessageRetentionDuration
public Subscription setTopicMessageRetentionDuration(String topicMessageRetentionDuration)
Output only. Indicates the minimum duration for which a message is retained after it is
published to the subscription's topic. If this field is set, messages published to the
subscription's topic in the last `topic_message_retention_duration` are always available to
subscribers. See the `message_retention_duration` field in `Topic`. This field is set only in
responses from the server; it is ignored if it is set in any requests.
- Parameters:
topicMessageRetentionDuration
- topicMessageRetentionDuration or null
for none
-
set
public Subscription set(String fieldName,
Object value)
- Overrides:
set
in class com.google.api.client.json.GenericJson
-
clone
public Subscription clone()
- Overrides:
clone
in class com.google.api.client.json.GenericJson
Copyright © 2011–2024 Google. All rights reserved.