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.
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. |