# Generated by the protocol buffer compiler. DO NOT EDIT!
# Source: google/pubsub/v1/pubsub.proto for package 'Google::Cloud::PubSub::V1'
# Original file comments:
# Copyright 2018 Google LLC.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
require 'grpc'
require 'google/pubsub/v1/pubsub_pb'
module Google
module Cloud
module PubSub
end
end
Pubsub = Cloud::PubSub unless const_defined? :Pubsub
end
module Google::Cloud::PubSub::V1
module Publisher
# The service that an application uses to manipulate topics, and to send
# messages to a topic.
class Service
include GRPC::GenericService
self.marshal_class_method = :encode
self.unmarshal_class_method = :decode
self.service_name = 'google.pubsub.v1.Publisher'
# Creates the given topic with the given name. See the
#
# resource name rules.
rpc :CreateTopic, Topic, Topic
# Updates an existing topic. Note that certain properties of a
# topic are not modifiable.
rpc :UpdateTopic, UpdateTopicRequest, Topic
# Adds one or more messages to the topic. Returns `NOT_FOUND` if the topic
# does not exist.
rpc :Publish, PublishRequest, PublishResponse
# Gets the configuration of a topic.
rpc :GetTopic, GetTopicRequest, Topic
# Lists matching topics.
rpc :ListTopics, ListTopicsRequest, ListTopicsResponse
# Lists the names of the subscriptions on this topic.
rpc :ListTopicSubscriptions, ListTopicSubscriptionsRequest, ListTopicSubscriptionsResponse
# Lists the names of the snapshots on this topic. Snapshots are used in
# Seek
# operations, which allow
# you to manage message acknowledgments in bulk. That is, you can set the
# acknowledgment state of messages in an existing subscription to the state
# captured by a snapshot.
# BETA: This feature is part of a beta release. This API might be
# changed in backward-incompatible ways and is not recommended for production
# use. It is not subject to any SLA or deprecation policy.
rpc :ListTopicSnapshots, ListTopicSnapshotsRequest, ListTopicSnapshotsResponse
# Deletes the topic with the given name. Returns `NOT_FOUND` if the topic
# does not exist. After a topic is deleted, a new topic may be created with
# the same name; this is an entirely new topic with none of the old
# configuration or subscriptions. Existing subscriptions to this topic are
# not deleted, but their `topic` field is set to `_deleted-topic_`.
rpc :DeleteTopic, DeleteTopicRequest, Google::Protobuf::Empty
end
Stub = Service.rpc_stub_class
end
module Subscriber
# The service that an application uses to manipulate subscriptions and to
# consume messages from a subscription via the `Pull` method or by
# establishing a bi-directional stream using the `StreamingPull` method.
class Service
include GRPC::GenericService
self.marshal_class_method = :encode
self.unmarshal_class_method = :decode
self.service_name = 'google.pubsub.v1.Subscriber'
# Creates a subscription to a given topic. See the
#
# resource name rules.
# If the subscription already exists, returns `ALREADY_EXISTS`.
# If the corresponding topic doesn't exist, returns `NOT_FOUND`.
#
# 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.
rpc :CreateSubscription, Subscription, Subscription
# Gets the configuration details of a subscription.
rpc :GetSubscription, GetSubscriptionRequest, Subscription
# Updates an existing subscription. Note that certain properties of a
# subscription, such as its topic, are not modifiable.
rpc :UpdateSubscription, UpdateSubscriptionRequest, Subscription
# Lists matching subscriptions.
rpc :ListSubscriptions, ListSubscriptionsRequest, ListSubscriptionsResponse
# Deletes an existing subscription. All messages retained in the subscription
# are immediately dropped. Calls to `Pull` after deletion will return
# `NOT_FOUND`. After a subscription is deleted, a new one may be created with
# the same name, but the new one has no association with the old
# subscription or its topic unless the same topic is specified.
rpc :DeleteSubscription, DeleteSubscriptionRequest, Google::Protobuf::Empty
# Modifies the ack deadline for a specific message. This method is useful
# to indicate that more time is needed to process a message by the
# subscriber, or to make the message available for redelivery if the
# processing was interrupted. Note that this does not modify the
# subscription-level `ackDeadlineSeconds` used for subsequent messages.
rpc :ModifyAckDeadline, ModifyAckDeadlineRequest, Google::Protobuf::Empty
# Acknowledges the messages associated with the `ack_ids` in the
# `AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages
# from the subscription.
#
# 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.
rpc :Acknowledge, AcknowledgeRequest, Google::Protobuf::Empty
# Pulls messages from the server. The server may return `UNAVAILABLE` if
# there are too many concurrent pull requests pending for the given
# subscription.
rpc :Pull, PullRequest, PullResponse
# Establishes a stream with the server, which sends messages down to the
# client. The client streams acknowledgements and ack deadline modifications
# back to the server. The server will close the stream and return the status
# on any error. The server may close the stream with status `UNAVAILABLE` to
# reassign server-side resources, in which case, the client should
# re-establish the stream. Flow control can be achieved by configuring the
# underlying RPC channel.
rpc :StreamingPull, stream(StreamingPullRequest), stream(StreamingPullResponse)
# Modifies the `PushConfig` for a specified subscription.
#
# 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`.
rpc :ModifyPushConfig, ModifyPushConfigRequest, Google::Protobuf::Empty
# Gets the configuration details of a snapshot. Snapshots are used in
# Seek
# operations, which allow you to manage message acknowledgments in bulk. That
# is, you can set the acknowledgment state of messages in an existing
# subscription to the state captured by a snapshot.
# BETA: This feature is part of a beta release. This API might be
# changed in backward-incompatible ways and is not recommended for production
# use. It is not subject to any SLA or deprecation policy.
rpc :GetSnapshot, GetSnapshotRequest, Snapshot
# Lists the existing snapshots. Snapshots are used in
# Seek
# operations, which allow
# you to manage message acknowledgments in bulk. That is, you can set the
# acknowledgment state of messages in an existing subscription to the state
# captured by a snapshot.
# BETA: This feature is part of a beta release. This API might be
# changed in backward-incompatible ways and is not recommended for production
# use. It is not subject to any SLA or deprecation policy.
rpc :ListSnapshots, ListSnapshotsRequest, ListSnapshotsResponse
# Creates a snapshot from the requested subscription. Snapshots are used in
# Seek
# operations, which allow
# you to manage message acknowledgments in bulk. That is, you can set the
# acknowledgment state of messages in an existing subscription to the state
# captured by a snapshot.
#
# BETA: This feature is part of a beta release. This API might be
# changed in backward-incompatible ways and is not recommended for production
# use. It is not subject to any SLA or deprecation policy.
# If the snapshot already exists, returns `ALREADY_EXISTS`.
# If the requested subscription doesn't exist, returns `NOT_FOUND`.
# If the backlog in the subscription is too old -- and the resulting snapshot
# would expire in less than 1 hour -- then `FAILED_PRECONDITION` is returned.
# See also the `Snapshot.expire_time` field. 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, conforming
# to the
# [resource name format](https://cloud.google.com/pubsub/docs/admin#resource_names).
# The generated name is populated in the returned Snapshot object. Note that
# for REST API requests, you must specify a name in the request.
rpc :CreateSnapshot, CreateSnapshotRequest, Snapshot
# Updates an existing snapshot. Snapshots are used in
# Seek
# operations, which allow
# you to manage message acknowledgments in bulk. That is, you can set the
# acknowledgment state of messages in an existing subscription to the state
# captured by a snapshot.
# BETA: This feature is part of a beta release. This API might be
# changed in backward-incompatible ways and is not recommended for production
# use. It is not subject to any SLA or deprecation policy.
# Note that certain properties of a snapshot are not modifiable.
rpc :UpdateSnapshot, UpdateSnapshotRequest, Snapshot
# Removes an existing snapshot. Snapshots are used in
# Seek
# operations, which allow
# you to manage message acknowledgments in bulk. That is, you can set the
# acknowledgment state of messages in an existing subscription to the state
# captured by a snapshot.
# BETA: This feature is part of a beta release. This API might be
# changed in backward-incompatible ways and is not recommended for production
# use. It is not subject to any SLA or deprecation policy.
# When the snapshot is deleted, all messages retained in the snapshot
# are immediately dropped. After a snapshot is deleted, a new one may be
# created with the same name, but the new one has no association with the old
# snapshot or its subscription, unless the same subscription is specified.
rpc :DeleteSnapshot, DeleteSnapshotRequest, Google::Protobuf::Empty
# Seeks an existing subscription to a point in time or to a given snapshot,
# whichever is provided in the request. Snapshots are used in
# Seek
# operations, which allow
# you to manage message acknowledgments in bulk. That is, you can set the
# acknowledgment state of messages in an existing subscription to the state
# captured by a snapshot. Note that both the subscription and the snapshot
# must be on the same topic.
# BETA: This feature is part of a beta release. This API might be
# changed in backward-incompatible ways and is not recommended for production
# use. It is not subject to any SLA or deprecation policy.
rpc :Seek, SeekRequest, SeekResponse
end
Stub = Service.rpc_stub_class
end
end