public sealed class PublisherClientBuilder : ClientBuilderBase<PublisherClient>
Reference documentation and code samples for the Cloud Pub/Sub v1 API class PublisherClientBuilder.
Builder class for PublisherClient to provide simple configuration of credentials, endpoint, client count, publication settings etc.
Inherited Members
Namespace
Google.Cloud.PubSub.V1Assembly
Google.Cloud.PubSub.V1.dll
Constructors
PublisherClientBuilder()
public PublisherClientBuilder()
Creates a new instance with default settings. TopicName must be set before calling either Build() or BuildAsync(CancellationToken).
Properties
ApiSettings
public PublisherServiceApiSettings ApiSettings { get; set; }
The settings to use when creating PublisherServiceApiClient instances. Default settings will be used if this is null.
Property Value | |
---|---|
Type | Description |
PublisherServiceApiSettings |
ClientCount
public int? ClientCount { get; set; }
The number of PublisherServiceApiClients to create and use within a PublisherClient instance. If this is null, the number of clients created will depend on the processor count.
Property Value | |
---|---|
Type | Description |
int |
EmulatorDetection
public EmulatorDetection EmulatorDetection { get; set; }
Specifies how to respond to the presence of emulator environment variables.
Property Value | |
---|---|
Type | Description |
EmulatorDetection |
This property defaults to None, meaning that environment variables are ignored.
Settings
public PublisherClient.Settings Settings { get; set; }
Additional settings for batching, message ordering etc. Default settings will be used if this is null.
Property Value | |
---|---|
Type | Description |
PublisherClientSettings |
ShareClientConnections
public bool ShareClientConnections { get; set; }
Whether the PublisherServiceApiClients may share gRPC connections or not. Defaults to false, meaning, each client has its own gRPC connection.
Property Value | |
---|---|
Type | Description |
bool |
TopicName
public TopicName TopicName { get; set; }
The name of the topic that the publisher publishes to. This must be non-null by the time Build() or BuildAsync(CancellationToken) is called.
Property Value | |
---|---|
Type | Description |
TopicName |
Methods
Build()
public override PublisherClient Build()
Builds the resulting client.
Returns | |
---|---|
Type | Description |
PublisherClient |
BuildAsync(CancellationToken)
public override Task<PublisherClient> BuildAsync(CancellationToken cancellationToken = default)
Builds the resulting client asynchronously.
Parameter | |
---|---|
Name | Description |
cancellationToken |
CancellationToken |
Returns | |
---|---|
Type | Description |
TaskPublisherClient |
GetChannelPool()
protected override ChannelPool GetChannelPool()
Returns the channel pool to use when no other options are specified. This method is not called unless CanUseChannelPool returns true, so if a channel pool is unavailable, override that property to return false and throw an exception from this method.
Returns | |
---|---|
Type | Description |
ChannelPool |
Validate()
protected override void Validate()
Validates that the builder is in a consistent state for building. For example, it's invalid to call Build() on an instance which has both JSON credentials and a credentials path specified.
Exceptions | |
---|---|
Type | Description |
InvalidOperationException |
The builder is in an invalid state. |