Class Subscription

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessageV3
com.google.pubsub.v1.Subscription
All Implemented Interfaces:
com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, SubscriptionOrBuilder, Serializable

public final class Subscription extends com.google.protobuf.GeneratedMessageV3 implements SubscriptionOrBuilder
 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.
 
Protobuf type google.pubsub.v1.Subscription
See Also:
  • Field Details

    • NAME_FIELD_NUMBER

      public static final int NAME_FIELD_NUMBER
      See Also:
    • TOPIC_FIELD_NUMBER

      public static final int TOPIC_FIELD_NUMBER
      See Also:
    • PUSH_CONFIG_FIELD_NUMBER

      public static final int PUSH_CONFIG_FIELD_NUMBER
      See Also:
    • BIGQUERY_CONFIG_FIELD_NUMBER

      public static final int BIGQUERY_CONFIG_FIELD_NUMBER
      See Also:
    • CLOUD_STORAGE_CONFIG_FIELD_NUMBER

      public static final int CLOUD_STORAGE_CONFIG_FIELD_NUMBER
      See Also:
    • ACK_DEADLINE_SECONDS_FIELD_NUMBER

      public static final int ACK_DEADLINE_SECONDS_FIELD_NUMBER
      See Also:
    • RETAIN_ACKED_MESSAGES_FIELD_NUMBER

      public static final int RETAIN_ACKED_MESSAGES_FIELD_NUMBER
      See Also:
    • MESSAGE_RETENTION_DURATION_FIELD_NUMBER

      public static final int MESSAGE_RETENTION_DURATION_FIELD_NUMBER
      See Also:
    • LABELS_FIELD_NUMBER

      public static final int LABELS_FIELD_NUMBER
      See Also:
    • ENABLE_MESSAGE_ORDERING_FIELD_NUMBER

      public static final int ENABLE_MESSAGE_ORDERING_FIELD_NUMBER
      See Also:
    • EXPIRATION_POLICY_FIELD_NUMBER

      public static final int EXPIRATION_POLICY_FIELD_NUMBER
      See Also:
    • FILTER_FIELD_NUMBER

      public static final int FILTER_FIELD_NUMBER
      See Also:
    • DEAD_LETTER_POLICY_FIELD_NUMBER

      public static final int DEAD_LETTER_POLICY_FIELD_NUMBER
      See Also:
    • RETRY_POLICY_FIELD_NUMBER

      public static final int RETRY_POLICY_FIELD_NUMBER
      See Also:
    • DETACHED_FIELD_NUMBER

      public static final int DETACHED_FIELD_NUMBER
      See Also:
    • ENABLE_EXACTLY_ONCE_DELIVERY_FIELD_NUMBER

      public static final int ENABLE_EXACTLY_ONCE_DELIVERY_FIELD_NUMBER
      See Also:
    • TOPIC_MESSAGE_RETENTION_DURATION_FIELD_NUMBER

      public static final int TOPIC_MESSAGE_RETENTION_DURATION_FIELD_NUMBER
      See Also:
    • STATE_FIELD_NUMBER

      public static final int STATE_FIELD_NUMBER
      See Also:
  • Method Details

    • newInstance

      protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
      Overrides:
      newInstance in class com.google.protobuf.GeneratedMessageV3
    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetMapField

      protected com.google.protobuf.MapField internalGetMapField(int number)
      Overrides:
      internalGetMapField in class com.google.protobuf.GeneratedMessageV3
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
    • 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"`.
       
      string name = 1 [(.google.api.field_behavior) = REQUIRED];
      Specified by:
      getName in interface SubscriptionOrBuilder
      Returns:
      The name.
    • getNameBytes

      public com.google.protobuf.ByteString getNameBytes()
       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"`.
       
      string name = 1 [(.google.api.field_behavior) = REQUIRED];
      Specified by:
      getNameBytes in interface SubscriptionOrBuilder
      Returns:
      The bytes for name.
    • 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.
       
      string topic = 2 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
      Specified by:
      getTopic in interface SubscriptionOrBuilder
      Returns:
      The topic.
    • getTopicBytes

      public com.google.protobuf.ByteString getTopicBytes()
       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.
       
      string topic = 2 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
      Specified by:
      getTopicBytes in interface SubscriptionOrBuilder
      Returns:
      The bytes for topic.
    • hasPushConfig

      public boolean hasPushConfig()
       Optional. If push delivery is used with this subscription, this field is
       used to configure it.
       
      .google.pubsub.v1.PushConfig push_config = 4 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasPushConfig in interface SubscriptionOrBuilder
      Returns:
      Whether the pushConfig field is set.
    • getPushConfig

      public PushConfig getPushConfig()
       Optional. If push delivery is used with this subscription, this field is
       used to configure it.
       
      .google.pubsub.v1.PushConfig push_config = 4 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getPushConfig in interface SubscriptionOrBuilder
      Returns:
      The pushConfig.
    • getPushConfigOrBuilder

      public PushConfigOrBuilder getPushConfigOrBuilder()
       Optional. If push delivery is used with this subscription, this field is
       used to configure it.
       
      .google.pubsub.v1.PushConfig push_config = 4 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getPushConfigOrBuilder in interface SubscriptionOrBuilder
    • hasBigqueryConfig

      public boolean hasBigqueryConfig()
       Optional. If delivery to BigQuery is used with this subscription, this
       field is used to configure it.
       
      .google.pubsub.v1.BigQueryConfig bigquery_config = 18 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasBigqueryConfig in interface SubscriptionOrBuilder
      Returns:
      Whether the bigqueryConfig field is set.
    • getBigqueryConfig

      public BigQueryConfig getBigqueryConfig()
       Optional. If delivery to BigQuery is used with this subscription, this
       field is used to configure it.
       
      .google.pubsub.v1.BigQueryConfig bigquery_config = 18 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getBigqueryConfig in interface SubscriptionOrBuilder
      Returns:
      The bigqueryConfig.
    • getBigqueryConfigOrBuilder

      public BigQueryConfigOrBuilder getBigqueryConfigOrBuilder()
       Optional. If delivery to BigQuery is used with this subscription, this
       field is used to configure it.
       
      .google.pubsub.v1.BigQueryConfig bigquery_config = 18 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getBigqueryConfigOrBuilder in interface SubscriptionOrBuilder
    • hasCloudStorageConfig

      public boolean hasCloudStorageConfig()
       Optional. If delivery to Google Cloud Storage is used with this
       subscription, this field is used to configure it.
       
      .google.pubsub.v1.CloudStorageConfig cloud_storage_config = 22 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasCloudStorageConfig in interface SubscriptionOrBuilder
      Returns:
      Whether the cloudStorageConfig field is set.
    • getCloudStorageConfig

      public CloudStorageConfig getCloudStorageConfig()
       Optional. If delivery to Google Cloud Storage is used with this
       subscription, this field is used to configure it.
       
      .google.pubsub.v1.CloudStorageConfig cloud_storage_config = 22 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getCloudStorageConfig in interface SubscriptionOrBuilder
      Returns:
      The cloudStorageConfig.
    • getCloudStorageConfigOrBuilder

      public CloudStorageConfigOrBuilder getCloudStorageConfigOrBuilder()
       Optional. If delivery to Google Cloud Storage is used with this
       subscription, this field is used to configure it.
       
      .google.pubsub.v1.CloudStorageConfig cloud_storage_config = 22 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getCloudStorageConfigOrBuilder in interface SubscriptionOrBuilder
    • getAckDeadlineSeconds

      public int 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.
       
      int32 ack_deadline_seconds = 5 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getAckDeadlineSeconds in interface SubscriptionOrBuilder
      Returns:
      The ackDeadlineSeconds.
    • 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.
       
      bool retain_acked_messages = 7 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getRetainAckedMessages in interface SubscriptionOrBuilder
      Returns:
      The retainAckedMessages.
    • hasMessageRetentionDuration

      public boolean hasMessageRetentionDuration()
       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 7 days or less than 10 minutes.
       
      .google.protobuf.Duration message_retention_duration = 8 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasMessageRetentionDuration in interface SubscriptionOrBuilder
      Returns:
      Whether the messageRetentionDuration field is set.
    • getMessageRetentionDuration

      public com.google.protobuf.Duration 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 7 days or less than 10 minutes.
       
      .google.protobuf.Duration message_retention_duration = 8 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getMessageRetentionDuration in interface SubscriptionOrBuilder
      Returns:
      The messageRetentionDuration.
    • getMessageRetentionDurationOrBuilder

      public com.google.protobuf.DurationOrBuilder getMessageRetentionDurationOrBuilder()
       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 7 days or less than 10 minutes.
       
      .google.protobuf.Duration message_retention_duration = 8 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getMessageRetentionDurationOrBuilder in interface SubscriptionOrBuilder
    • getLabelsCount

      public int getLabelsCount()
      Description copied from interface: SubscriptionOrBuilder
       Optional. See [Creating and managing
       labels](https://cloud.google.com/pubsub/docs/labels).
       
      map<string, string> labels = 9 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getLabelsCount in interface SubscriptionOrBuilder
    • containsLabels

      public boolean containsLabels(String key)
       Optional. See [Creating and managing
       labels](https://cloud.google.com/pubsub/docs/labels).
       
      map<string, string> labels = 9 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      containsLabels in interface SubscriptionOrBuilder
    • getLabels

      @Deprecated public Map<String,String> getLabels()
      Deprecated.
      Use getLabelsMap() instead.
      Specified by:
      getLabels in interface SubscriptionOrBuilder
    • getLabelsMap

      public Map<String,String> getLabelsMap()
       Optional. See [Creating and managing
       labels](https://cloud.google.com/pubsub/docs/labels).
       
      map<string, string> labels = 9 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getLabelsMap in interface SubscriptionOrBuilder
    • getLabelsOrDefault

      public String getLabelsOrDefault(String key, String defaultValue)
       Optional. See [Creating and managing
       labels](https://cloud.google.com/pubsub/docs/labels).
       
      map<string, string> labels = 9 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getLabelsOrDefault in interface SubscriptionOrBuilder
    • getLabelsOrThrow

      public String getLabelsOrThrow(String key)
       Optional. See [Creating and managing
       labels](https://cloud.google.com/pubsub/docs/labels).
       
      map<string, string> labels = 9 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getLabelsOrThrow in interface SubscriptionOrBuilder
    • 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.
       
      bool enable_message_ordering = 10 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getEnableMessageOrdering in interface SubscriptionOrBuilder
      Returns:
      The enableMessageOrdering.
    • hasExpirationPolicy

      public boolean hasExpirationPolicy()
       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.
       
      .google.pubsub.v1.ExpirationPolicy expiration_policy = 11 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasExpirationPolicy in interface SubscriptionOrBuilder
      Returns:
      Whether the expirationPolicy field is set.
    • 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.
       
      .google.pubsub.v1.ExpirationPolicy expiration_policy = 11 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getExpirationPolicy in interface SubscriptionOrBuilder
      Returns:
      The expirationPolicy.
    • getExpirationPolicyOrBuilder

      public ExpirationPolicyOrBuilder getExpirationPolicyOrBuilder()
       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.
       
      .google.pubsub.v1.ExpirationPolicy expiration_policy = 11 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getExpirationPolicyOrBuilder in interface SubscriptionOrBuilder
    • 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.
       
      string filter = 12 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getFilter in interface SubscriptionOrBuilder
      Returns:
      The filter.
    • getFilterBytes

      public com.google.protobuf.ByteString getFilterBytes()
       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.
       
      string filter = 12 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getFilterBytes in interface SubscriptionOrBuilder
      Returns:
      The bytes for filter.
    • hasDeadLetterPolicy

      public boolean hasDeadLetterPolicy()
       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.
       
      .google.pubsub.v1.DeadLetterPolicy dead_letter_policy = 13 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasDeadLetterPolicy in interface SubscriptionOrBuilder
      Returns:
      Whether the deadLetterPolicy field is set.
    • 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.
       
      .google.pubsub.v1.DeadLetterPolicy dead_letter_policy = 13 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getDeadLetterPolicy in interface SubscriptionOrBuilder
      Returns:
      The deadLetterPolicy.
    • getDeadLetterPolicyOrBuilder

      public DeadLetterPolicyOrBuilder getDeadLetterPolicyOrBuilder()
       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.
       
      .google.pubsub.v1.DeadLetterPolicy dead_letter_policy = 13 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getDeadLetterPolicyOrBuilder in interface SubscriptionOrBuilder
    • hasRetryPolicy

      public boolean hasRetryPolicy()
       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.
       
      .google.pubsub.v1.RetryPolicy retry_policy = 14 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      hasRetryPolicy in interface SubscriptionOrBuilder
      Returns:
      Whether the retryPolicy field is set.
    • 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.
       
      .google.pubsub.v1.RetryPolicy retry_policy = 14 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getRetryPolicy in interface SubscriptionOrBuilder
      Returns:
      The retryPolicy.
    • getRetryPolicyOrBuilder

      public RetryPolicyOrBuilder getRetryPolicyOrBuilder()
       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.
       
      .google.pubsub.v1.RetryPolicy retry_policy = 14 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getRetryPolicyOrBuilder in interface SubscriptionOrBuilder
    • 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.
       
      bool detached = 15 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getDetached in interface SubscriptionOrBuilder
      Returns:
      The detached.
    • 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.
       
      bool enable_exactly_once_delivery = 16 [(.google.api.field_behavior) = OPTIONAL];
      Specified by:
      getEnableExactlyOnceDelivery in interface SubscriptionOrBuilder
      Returns:
      The enableExactlyOnceDelivery.
    • hasTopicMessageRetentionDuration

      public boolean hasTopicMessageRetentionDuration()
       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.
       
      .google.protobuf.Duration topic_message_retention_duration = 17 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      hasTopicMessageRetentionDuration in interface SubscriptionOrBuilder
      Returns:
      Whether the topicMessageRetentionDuration field is set.
    • getTopicMessageRetentionDuration

      public com.google.protobuf.Duration 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.
       
      .google.protobuf.Duration topic_message_retention_duration = 17 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getTopicMessageRetentionDuration in interface SubscriptionOrBuilder
      Returns:
      The topicMessageRetentionDuration.
    • getTopicMessageRetentionDurationOrBuilder

      public com.google.protobuf.DurationOrBuilder getTopicMessageRetentionDurationOrBuilder()
       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.
       
      .google.protobuf.Duration topic_message_retention_duration = 17 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getTopicMessageRetentionDurationOrBuilder in interface SubscriptionOrBuilder
    • getStateValue

      public int getStateValue()
       Output only. An output-only field indicating whether or not the
       subscription can receive messages.
       
      .google.pubsub.v1.Subscription.State state = 19 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getStateValue in interface SubscriptionOrBuilder
      Returns:
      The enum numeric value on the wire for state.
    • getState

      public Subscription.State getState()
       Output only. An output-only field indicating whether or not the
       subscription can receive messages.
       
      .google.pubsub.v1.Subscription.State state = 19 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Specified by:
      getState in interface SubscriptionOrBuilder
      Returns:
      The state.
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessageV3
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessageV3
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static Subscription parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Subscription parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Subscription parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Subscription parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Subscription parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Subscription parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Subscription parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Subscription parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Subscription parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Subscription parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Subscription parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Subscription parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public Subscription.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static Subscription.Builder newBuilder()
    • newBuilder

      public static Subscription.Builder newBuilder(Subscription prototype)
    • toBuilder

      public Subscription.Builder toBuilder()
      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected Subscription.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
      Specified by:
      newBuilderForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstance

      public static Subscription getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<Subscription> parser()
    • getParserForType

      public com.google.protobuf.Parser<Subscription> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessageV3
    • getDefaultInstanceForType

      public Subscription getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder