Documentation ¶
Overview ¶
Use of Context
The ctx passed to NewClient is used for authentication requests and for creating the underlying connection, but is not used for subsequent calls. Individual methods on the client use the ctx given to them.
To close the open connection, use the Close() method.
For information about setting deadlines, reusing contexts, and more please visit pkg.go.dev/cloud.google.com/go.
Index ¶
- func DefaultAuthScopes() []string
- type AdminCallOptions
- type AdminClient
- func (c *AdminClient) Close() error
- func (c *AdminClient) Connection() *grpc.ClientConn
- func (c *AdminClient) CreateSubscription(ctx context.Context, req *pubsublitepb.CreateSubscriptionRequest, ...) (*pubsublitepb.Subscription, error)
- func (c *AdminClient) CreateTopic(ctx context.Context, req *pubsublitepb.CreateTopicRequest, ...) (*pubsublitepb.Topic, error)
- func (c *AdminClient) DeleteSubscription(ctx context.Context, req *pubsublitepb.DeleteSubscriptionRequest, ...) error
- func (c *AdminClient) DeleteTopic(ctx context.Context, req *pubsublitepb.DeleteTopicRequest, ...) error
- func (c *AdminClient) GetSubscription(ctx context.Context, req *pubsublitepb.GetSubscriptionRequest, ...) (*pubsublitepb.Subscription, error)
- func (c *AdminClient) GetTopic(ctx context.Context, req *pubsublitepb.GetTopicRequest, opts ...gax.CallOption) (*pubsublitepb.Topic, error)
- func (c *AdminClient) GetTopicPartitions(ctx context.Context, req *pubsublitepb.GetTopicPartitionsRequest, ...) (*pubsublitepb.TopicPartitions, error)
- func (c *AdminClient) ListSubscriptions(ctx context.Context, req *pubsublitepb.ListSubscriptionsRequest, ...) *SubscriptionIterator
- func (c *AdminClient) ListTopicSubscriptions(ctx context.Context, req *pubsublitepb.ListTopicSubscriptionsRequest, ...) *StringIterator
- func (c *AdminClient) ListTopics(ctx context.Context, req *pubsublitepb.ListTopicsRequest, ...) *TopicIterator
- func (c *AdminClient) UpdateSubscription(ctx context.Context, req *pubsublitepb.UpdateSubscriptionRequest, ...) (*pubsublitepb.Subscription, error)
- func (c *AdminClient) UpdateTopic(ctx context.Context, req *pubsublitepb.UpdateTopicRequest, ...) (*pubsublitepb.Topic, error)
- type CursorCallOptions
- type CursorClient
- func (c *CursorClient) Close() error
- func (c *CursorClient) CommitCursor(ctx context.Context, req *pubsublitepb.CommitCursorRequest, ...) (*pubsublitepb.CommitCursorResponse, error)
- func (c *CursorClient) Connection() *grpc.ClientConn
- func (c *CursorClient) ListPartitionCursors(ctx context.Context, req *pubsublitepb.ListPartitionCursorsRequest, ...) *PartitionCursorIterator
- func (c *CursorClient) StreamingCommitCursor(ctx context.Context, opts ...gax.CallOption) (pubsublitepb.CursorService_StreamingCommitCursorClient, error)
- type PartitionAssignmentCallOptions
- type PartitionAssignmentClient
- type PartitionCursorIterator
- type PublisherCallOptions
- type PublisherClient
- type StringIterator
- type SubscriberCallOptions
- type SubscriberClient
- type SubscriptionIterator
- type TopicIterator
- type TopicStatsCallOptions
- type TopicStatsClient
- func (c *TopicStatsClient) Close() error
- func (c *TopicStatsClient) ComputeHeadCursor(ctx context.Context, req *pubsublitepb.ComputeHeadCursorRequest, ...) (*pubsublitepb.ComputeHeadCursorResponse, error)
- func (c *TopicStatsClient) ComputeMessageStats(ctx context.Context, req *pubsublitepb.ComputeMessageStatsRequest, ...) (*pubsublitepb.ComputeMessageStatsResponse, error)
- func (c *TopicStatsClient) Connection() *grpc.ClientConn
Examples ¶
- AdminClient.CreateSubscription
- AdminClient.CreateTopic
- AdminClient.DeleteSubscription
- AdminClient.DeleteTopic
- AdminClient.GetSubscription
- AdminClient.GetTopic
- AdminClient.GetTopicPartitions
- AdminClient.ListSubscriptions
- AdminClient.ListTopicSubscriptions
- AdminClient.ListTopics
- AdminClient.UpdateSubscription
- AdminClient.UpdateTopic
- CursorClient.CommitCursor
- CursorClient.ListPartitionCursors
- CursorClient.StreamingCommitCursor
- NewAdminClient
- NewCursorClient
- NewPartitionAssignmentClient
- NewPublisherClient
- NewSubscriberClient
- NewTopicStatsClient
- PartitionAssignmentClient.AssignPartitions
- PublisherClient.Publish
- SubscriberClient.Subscribe
- TopicStatsClient.ComputeHeadCursor
- TopicStatsClient.ComputeMessageStats
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultAuthScopes ¶
func DefaultAuthScopes() []string
DefaultAuthScopes reports the default set of authentication scopes to use with this package.
Types ¶
type AdminCallOptions ¶
type AdminCallOptions struct { CreateTopic []gax.CallOption GetTopic []gax.CallOption GetTopicPartitions []gax.CallOption ListTopics []gax.CallOption UpdateTopic []gax.CallOption DeleteTopic []gax.CallOption ListTopicSubscriptions []gax.CallOption CreateSubscription []gax.CallOption GetSubscription []gax.CallOption ListSubscriptions []gax.CallOption UpdateSubscription []gax.CallOption DeleteSubscription []gax.CallOption }
AdminCallOptions contains the retry settings for each method of AdminClient.
type AdminClient ¶
type AdminClient struct { // The call options for this service. CallOptions *AdminCallOptions // contains filtered or unexported fields }
AdminClient is a client for interacting with .
Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
func NewAdminClient ¶
func NewAdminClient(ctx context.Context, opts ...option.ClientOption) (*AdminClient, error)
NewAdminClient creates a new admin service client.
The service that a client application uses to manage topics and subscriptions, such creating, listing, and deleting topics and subscriptions.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" ) func main() { ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } // TODO: Use client. _ = c }
Output:
func (*AdminClient) Close ¶
func (c *AdminClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*AdminClient) Connection ¶
func (c *AdminClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated.
func (*AdminClient) CreateSubscription ¶
func (c *AdminClient) CreateSubscription(ctx context.Context, req *pubsublitepb.CreateSubscriptionRequest, opts ...gax.CallOption) (*pubsublitepb.Subscription, error)
CreateSubscription creates a new subscription.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.CreateSubscriptionRequest{ // TODO: Fill request struct fields. } resp, err := c.CreateSubscription(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*AdminClient) CreateTopic ¶
func (c *AdminClient) CreateTopic(ctx context.Context, req *pubsublitepb.CreateTopicRequest, opts ...gax.CallOption) (*pubsublitepb.Topic, error)
CreateTopic creates a new topic.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.CreateTopicRequest{ // TODO: Fill request struct fields. } resp, err := c.CreateTopic(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*AdminClient) DeleteSubscription ¶
func (c *AdminClient) DeleteSubscription(ctx context.Context, req *pubsublitepb.DeleteSubscriptionRequest, opts ...gax.CallOption) error
DeleteSubscription deletes the specified subscription.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.DeleteSubscriptionRequest{ // TODO: Fill request struct fields. } err = c.DeleteSubscription(ctx, req) if err != nil { // TODO: Handle error. } }
Output:
func (*AdminClient) DeleteTopic ¶
func (c *AdminClient) DeleteTopic(ctx context.Context, req *pubsublitepb.DeleteTopicRequest, opts ...gax.CallOption) error
DeleteTopic deletes the specified topic.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.DeleteTopicRequest{ // TODO: Fill request struct fields. } err = c.DeleteTopic(ctx, req) if err != nil { // TODO: Handle error. } }
Output:
func (*AdminClient) GetSubscription ¶
func (c *AdminClient) GetSubscription(ctx context.Context, req *pubsublitepb.GetSubscriptionRequest, opts ...gax.CallOption) (*pubsublitepb.Subscription, error)
GetSubscription returns the subscription configuration.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.GetSubscriptionRequest{ // TODO: Fill request struct fields. } resp, err := c.GetSubscription(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*AdminClient) GetTopic ¶
func (c *AdminClient) GetTopic(ctx context.Context, req *pubsublitepb.GetTopicRequest, opts ...gax.CallOption) (*pubsublitepb.Topic, error)
GetTopic returns the topic configuration.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.GetTopicRequest{ // TODO: Fill request struct fields. } resp, err := c.GetTopic(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*AdminClient) GetTopicPartitions ¶
func (c *AdminClient) GetTopicPartitions(ctx context.Context, req *pubsublitepb.GetTopicPartitionsRequest, opts ...gax.CallOption) (*pubsublitepb.TopicPartitions, error)
GetTopicPartitions returns the partition information for the requested topic.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.GetTopicPartitionsRequest{ // TODO: Fill request struct fields. } resp, err := c.GetTopicPartitions(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*AdminClient) ListSubscriptions ¶
func (c *AdminClient) ListSubscriptions(ctx context.Context, req *pubsublitepb.ListSubscriptionsRequest, opts ...gax.CallOption) *SubscriptionIterator
ListSubscriptions returns the list of subscriptions for the given project.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" "google.golang.org/api/iterator" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" // import "google.golang.org/api/iterator" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.ListSubscriptionsRequest{ // TODO: Fill request struct fields. } it := c.ListSubscriptions(ctx, req) for { resp, err := it.Next() if err == iterator.Done { break } if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp } }
Output:
func (*AdminClient) ListTopicSubscriptions ¶
func (c *AdminClient) ListTopicSubscriptions(ctx context.Context, req *pubsublitepb.ListTopicSubscriptionsRequest, opts ...gax.CallOption) *StringIterator
ListTopicSubscriptions lists the subscriptions attached to the specified topic.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" "google.golang.org/api/iterator" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" // import "google.golang.org/api/iterator" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.ListTopicSubscriptionsRequest{ // TODO: Fill request struct fields. } it := c.ListTopicSubscriptions(ctx, req) for { resp, err := it.Next() if err == iterator.Done { break } if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp } }
Output:
func (*AdminClient) ListTopics ¶
func (c *AdminClient) ListTopics(ctx context.Context, req *pubsublitepb.ListTopicsRequest, opts ...gax.CallOption) *TopicIterator
ListTopics returns the list of topics for the given project.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" "google.golang.org/api/iterator" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" // import "google.golang.org/api/iterator" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.ListTopicsRequest{ // TODO: Fill request struct fields. } it := c.ListTopics(ctx, req) for { resp, err := it.Next() if err == iterator.Done { break } if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp } }
Output:
func (*AdminClient) UpdateSubscription ¶
func (c *AdminClient) UpdateSubscription(ctx context.Context, req *pubsublitepb.UpdateSubscriptionRequest, opts ...gax.CallOption) (*pubsublitepb.Subscription, error)
UpdateSubscription updates properties of the specified subscription.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.UpdateSubscriptionRequest{ // TODO: Fill request struct fields. } resp, err := c.UpdateSubscription(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*AdminClient) UpdateTopic ¶
func (c *AdminClient) UpdateTopic(ctx context.Context, req *pubsublitepb.UpdateTopicRequest, opts ...gax.CallOption) (*pubsublitepb.Topic, error)
UpdateTopic updates properties of the specified topic.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewAdminClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.UpdateTopicRequest{ // TODO: Fill request struct fields. } resp, err := c.UpdateTopic(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
type CursorCallOptions ¶
type CursorCallOptions struct { StreamingCommitCursor []gax.CallOption CommitCursor []gax.CallOption ListPartitionCursors []gax.CallOption }
CursorCallOptions contains the retry settings for each method of CursorClient.
type CursorClient ¶
type CursorClient struct { // The call options for this service. CallOptions *CursorCallOptions // contains filtered or unexported fields }
CursorClient is a client for interacting with .
Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
func NewCursorClient ¶
func NewCursorClient(ctx context.Context, opts ...option.ClientOption) (*CursorClient, error)
NewCursorClient creates a new cursor service client.
The service that a subscriber client application uses to manage committed cursors while receiving messsages. A cursor represents a subscriber’s progress within a topic partition for a given subscription.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" ) func main() { ctx := context.Background() c, err := pubsublite.NewCursorClient(ctx) if err != nil { // TODO: Handle error. } // TODO: Use client. _ = c }
Output:
func (*CursorClient) Close ¶
func (c *CursorClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*CursorClient) CommitCursor ¶
func (c *CursorClient) CommitCursor(ctx context.Context, req *pubsublitepb.CommitCursorRequest, opts ...gax.CallOption) (*pubsublitepb.CommitCursorResponse, error)
CommitCursor updates the committed cursor.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewCursorClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.CommitCursorRequest{ // TODO: Fill request struct fields. } resp, err := c.CommitCursor(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*CursorClient) Connection ¶
func (c *CursorClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated.
func (*CursorClient) ListPartitionCursors ¶
func (c *CursorClient) ListPartitionCursors(ctx context.Context, req *pubsublitepb.ListPartitionCursorsRequest, opts ...gax.CallOption) *PartitionCursorIterator
ListPartitionCursors returns all committed cursor information for a subscription.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" "google.golang.org/api/iterator" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" // import "google.golang.org/api/iterator" ctx := context.Background() c, err := pubsublite.NewCursorClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.ListPartitionCursorsRequest{ // TODO: Fill request struct fields. } it := c.ListPartitionCursors(ctx, req) for { resp, err := it.Next() if err == iterator.Done { break } if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp } }
Output:
func (*CursorClient) StreamingCommitCursor ¶
func (c *CursorClient) StreamingCommitCursor(ctx context.Context, opts ...gax.CallOption) (pubsublitepb.CursorService_StreamingCommitCursorClient, error)
StreamingCommitCursor establishes a stream with the server for managing committed cursors.
Example ¶
package main import ( "context" "io" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewCursorClient(ctx) if err != nil { // TODO: Handle error. } stream, err := c.StreamingCommitCursor(ctx) if err != nil { // TODO: Handle error. } go func() { reqs := []*pubsublitepb.StreamingCommitCursorRequest{ // TODO: Create requests. } for _, req := range reqs { if err := stream.Send(req); err != nil { // TODO: Handle error. } } stream.CloseSend() }() for { resp, err := stream.Recv() if err == io.EOF { break } if err != nil { // TODO: handle error. } // TODO: Use resp. _ = resp } }
Output:
type PartitionAssignmentCallOptions ¶
type PartitionAssignmentCallOptions struct {
AssignPartitions []gax.CallOption
}
PartitionAssignmentCallOptions contains the retry settings for each method of PartitionAssignmentClient.
type PartitionAssignmentClient ¶
type PartitionAssignmentClient struct { // The call options for this service. CallOptions *PartitionAssignmentCallOptions // contains filtered or unexported fields }
PartitionAssignmentClient is a client for interacting with .
Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
func NewPartitionAssignmentClient ¶
func NewPartitionAssignmentClient(ctx context.Context, opts ...option.ClientOption) (*PartitionAssignmentClient, error)
NewPartitionAssignmentClient creates a new partition assignment service client.
The service that a subscriber client application uses to determine which partitions it should connect to.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" ) func main() { ctx := context.Background() c, err := pubsublite.NewPartitionAssignmentClient(ctx) if err != nil { // TODO: Handle error. } // TODO: Use client. _ = c }
Output:
func (*PartitionAssignmentClient) AssignPartitions ¶
func (c *PartitionAssignmentClient) AssignPartitions(ctx context.Context, opts ...gax.CallOption) (pubsublitepb.PartitionAssignmentService_AssignPartitionsClient, error)
AssignPartitions assign partitions for this client to handle for the specified subscription.
The client must send an InitialPartitionAssignmentRequest first. The server will then send at most one unacknowledged PartitionAssignment outstanding on the stream at a time. The client should send a PartitionAssignmentAck after updating the partitions it is connected to to reflect the new assignment.
Example ¶
package main import ( "context" "io" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewPartitionAssignmentClient(ctx) if err != nil { // TODO: Handle error. } stream, err := c.AssignPartitions(ctx) if err != nil { // TODO: Handle error. } go func() { reqs := []*pubsublitepb.PartitionAssignmentRequest{ // TODO: Create requests. } for _, req := range reqs { if err := stream.Send(req); err != nil { // TODO: Handle error. } } stream.CloseSend() }() for { resp, err := stream.Recv() if err == io.EOF { break } if err != nil { // TODO: handle error. } // TODO: Use resp. _ = resp } }
Output:
func (*PartitionAssignmentClient) Close ¶
func (c *PartitionAssignmentClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*PartitionAssignmentClient) Connection ¶
func (c *PartitionAssignmentClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated.
type PartitionCursorIterator ¶
type PartitionCursorIterator struct { // Response is the raw response for the current page. // It must be cast to the RPC response type. // Calling Next() or InternalFetch() updates this value. Response interface{} // InternalFetch is for use by the Google Cloud Libraries only. // It is not part of the stable interface of this package. // // InternalFetch returns results from a single call to the underlying RPC. // The number of results is no greater than pageSize. // If there are no more results, nextPageToken is empty and err is nil. InternalFetch func(pageSize int, pageToken string) (results []*pubsublitepb.PartitionCursor, nextPageToken string, err error) // contains filtered or unexported fields }
PartitionCursorIterator manages a stream of *pubsublitepb.PartitionCursor.
func (*PartitionCursorIterator) Next ¶
func (it *PartitionCursorIterator) Next() (*pubsublitepb.PartitionCursor, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*PartitionCursorIterator) PageInfo ¶
func (it *PartitionCursorIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
type PublisherCallOptions ¶
type PublisherCallOptions struct {
Publish []gax.CallOption
}
PublisherCallOptions contains the retry settings for each method of PublisherClient.
type PublisherClient ¶
type PublisherClient struct { // The call options for this service. CallOptions *PublisherCallOptions // contains filtered or unexported fields }
PublisherClient is a client for interacting with .
Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
func NewPublisherClient ¶
func NewPublisherClient(ctx context.Context, opts ...option.ClientOption) (*PublisherClient, error)
NewPublisherClient creates a new publisher service client.
The service that a publisher client application uses to publish messages to topics. Published messages are retained by the service for the duration of the retention period configured for the respective topic, and are delivered to subscriber clients upon request (via the SubscriberService).
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" ) func main() { ctx := context.Background() c, err := pubsublite.NewPublisherClient(ctx) if err != nil { // TODO: Handle error. } // TODO: Use client. _ = c }
Output:
func (*PublisherClient) Close ¶
func (c *PublisherClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*PublisherClient) Connection ¶
func (c *PublisherClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated.
func (*PublisherClient) Publish ¶
func (c *PublisherClient) Publish(ctx context.Context, opts ...gax.CallOption) (pubsublitepb.PublisherService_PublishClient, error)
Publish establishes a stream with the server for publishing messages. Once the stream is initialized, the client publishes messages by sending publish requests on the stream. The server responds with a PublishResponse for each PublishRequest sent by the client, in the same order that the requests were sent. Note that multiple PublishRequests can be in flight simultaneously, but they will be processed by the server in the order that they are sent by the client on a given stream.
Example ¶
package main import ( "context" "io" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewPublisherClient(ctx) if err != nil { // TODO: Handle error. } stream, err := c.Publish(ctx) if err != nil { // TODO: Handle error. } go func() { reqs := []*pubsublitepb.PublishRequest{ // TODO: Create requests. } for _, req := range reqs { if err := stream.Send(req); err != nil { // TODO: Handle error. } } stream.CloseSend() }() for { resp, err := stream.Recv() if err == io.EOF { break } if err != nil { // TODO: handle error. } // TODO: Use resp. _ = resp } }
Output:
type StringIterator ¶
type StringIterator struct { // Response is the raw response for the current page. // It must be cast to the RPC response type. // Calling Next() or InternalFetch() updates this value. Response interface{} // InternalFetch is for use by the Google Cloud Libraries only. // It is not part of the stable interface of this package. // // InternalFetch returns results from a single call to the underlying RPC. // The number of results is no greater than pageSize. // If there are no more results, nextPageToken is empty and err is nil. InternalFetch func(pageSize int, pageToken string) (results []string, nextPageToken string, err error) // contains filtered or unexported fields }
StringIterator manages a stream of string.
func (*StringIterator) Next ¶
func (it *StringIterator) Next() (string, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*StringIterator) PageInfo ¶
func (it *StringIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
type SubscriberCallOptions ¶
type SubscriberCallOptions struct {
Subscribe []gax.CallOption
}
SubscriberCallOptions contains the retry settings for each method of SubscriberClient.
type SubscriberClient ¶
type SubscriberClient struct { // The call options for this service. CallOptions *SubscriberCallOptions // contains filtered or unexported fields }
SubscriberClient is a client for interacting with .
Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
func NewSubscriberClient ¶
func NewSubscriberClient(ctx context.Context, opts ...option.ClientOption) (*SubscriberClient, error)
NewSubscriberClient creates a new subscriber service client.
The service that a subscriber client application uses to receive messages from subscriptions.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" ) func main() { ctx := context.Background() c, err := pubsublite.NewSubscriberClient(ctx) if err != nil { // TODO: Handle error. } // TODO: Use client. _ = c }
Output:
func (*SubscriberClient) Close ¶
func (c *SubscriberClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*SubscriberClient) Connection ¶
func (c *SubscriberClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated.
func (*SubscriberClient) Subscribe ¶
func (c *SubscriberClient) Subscribe(ctx context.Context, opts ...gax.CallOption) (pubsublitepb.SubscriberService_SubscribeClient, error)
Subscribe establishes a stream with the server for receiving messages.
Example ¶
package main import ( "context" "io" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewSubscriberClient(ctx) if err != nil { // TODO: Handle error. } stream, err := c.Subscribe(ctx) if err != nil { // TODO: Handle error. } go func() { reqs := []*pubsublitepb.SubscribeRequest{ // TODO: Create requests. } for _, req := range reqs { if err := stream.Send(req); err != nil { // TODO: Handle error. } } stream.CloseSend() }() for { resp, err := stream.Recv() if err == io.EOF { break } if err != nil { // TODO: handle error. } // TODO: Use resp. _ = resp } }
Output:
type SubscriptionIterator ¶
type SubscriptionIterator struct { // Response is the raw response for the current page. // It must be cast to the RPC response type. // Calling Next() or InternalFetch() updates this value. Response interface{} // InternalFetch is for use by the Google Cloud Libraries only. // It is not part of the stable interface of this package. // // InternalFetch returns results from a single call to the underlying RPC. // The number of results is no greater than pageSize. // If there are no more results, nextPageToken is empty and err is nil. InternalFetch func(pageSize int, pageToken string) (results []*pubsublitepb.Subscription, nextPageToken string, err error) // contains filtered or unexported fields }
SubscriptionIterator manages a stream of *pubsublitepb.Subscription.
func (*SubscriptionIterator) Next ¶
func (it *SubscriptionIterator) Next() (*pubsublitepb.Subscription, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*SubscriptionIterator) PageInfo ¶
func (it *SubscriptionIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
type TopicIterator ¶
type TopicIterator struct { // Response is the raw response for the current page. // It must be cast to the RPC response type. // Calling Next() or InternalFetch() updates this value. Response interface{} // InternalFetch is for use by the Google Cloud Libraries only. // It is not part of the stable interface of this package. // // InternalFetch returns results from a single call to the underlying RPC. // The number of results is no greater than pageSize. // If there are no more results, nextPageToken is empty and err is nil. InternalFetch func(pageSize int, pageToken string) (results []*pubsublitepb.Topic, nextPageToken string, err error) // contains filtered or unexported fields }
TopicIterator manages a stream of *pubsublitepb.Topic.
func (*TopicIterator) Next ¶
func (it *TopicIterator) Next() (*pubsublitepb.Topic, error)
Next returns the next result. Its second return value is iterator.Done if there are no more results. Once Next returns Done, all subsequent calls will return Done.
func (*TopicIterator) PageInfo ¶
func (it *TopicIterator) PageInfo() *iterator.PageInfo
PageInfo supports pagination. See the google.golang.org/api/iterator package for details.
type TopicStatsCallOptions ¶
type TopicStatsCallOptions struct { ComputeMessageStats []gax.CallOption ComputeHeadCursor []gax.CallOption }
TopicStatsCallOptions contains the retry settings for each method of TopicStatsClient.
type TopicStatsClient ¶
type TopicStatsClient struct { // The call options for this service. CallOptions *TopicStatsCallOptions // contains filtered or unexported fields }
TopicStatsClient is a client for interacting with .
Methods, except Close, may be called concurrently. However, fields must not be modified concurrently with method calls.
func NewTopicStatsClient ¶
func NewTopicStatsClient(ctx context.Context, opts ...option.ClientOption) (*TopicStatsClient, error)
NewTopicStatsClient creates a new topic stats service client.
This service allows users to get stats about messages in their topic.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" ) func main() { ctx := context.Background() c, err := pubsublite.NewTopicStatsClient(ctx) if err != nil { // TODO: Handle error. } // TODO: Use client. _ = c }
Output:
func (*TopicStatsClient) Close ¶
func (c *TopicStatsClient) Close() error
Close closes the connection to the API service. The user should invoke this when the client is no longer required.
func (*TopicStatsClient) ComputeHeadCursor ¶ added in v0.5.0
func (c *TopicStatsClient) ComputeHeadCursor(ctx context.Context, req *pubsublitepb.ComputeHeadCursorRequest, opts ...gax.CallOption) (*pubsublitepb.ComputeHeadCursorResponse, error)
ComputeHeadCursor compute the head cursor for the partition. The head cursor’s offset is guaranteed to be less than or equal to all messages which have not yet been acknowledged as published, and greater than the offset of any message whose publish has already been acknowledged. It is zero if there have never been messages in the partition.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewTopicStatsClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.ComputeHeadCursorRequest{ // TODO: Fill request struct fields. } resp, err := c.ComputeHeadCursor(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*TopicStatsClient) ComputeMessageStats ¶
func (c *TopicStatsClient) ComputeMessageStats(ctx context.Context, req *pubsublitepb.ComputeMessageStatsRequest, opts ...gax.CallOption) (*pubsublitepb.ComputeMessageStatsResponse, error)
ComputeMessageStats compute statistics about a range of messages in a given topic and partition.
Example ¶
package main import ( "context" pubsublite "cloud.google.com/go/pubsublite/apiv1" pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ) func main() { // import pubsublitepb "google.golang.org/genproto/googleapis/cloud/pubsublite/v1" ctx := context.Background() c, err := pubsublite.NewTopicStatsClient(ctx) if err != nil { // TODO: Handle error. } req := &pubsublitepb.ComputeMessageStatsRequest{ // TODO: Fill request struct fields. } resp, err := c.ComputeMessageStats(ctx, req) if err != nil { // TODO: Handle error. } // TODO: Use resp. _ = resp }
Output:
func (*TopicStatsClient) Connection ¶
func (c *TopicStatsClient) Connection() *grpc.ClientConn
Connection returns a connection to the API service.
Deprecated.