Class Publisher.Builder

java.lang.Object
com.google.cloud.pubsub.v1.Publisher.Builder
Enclosing class:
Publisher

public static final class Publisher.Builder extends Object
A builder of Publishers.
  • Method Details

    • setChannelProvider

      public Publisher.Builder setChannelProvider(com.google.api.gax.rpc.TransportChannelProvider channelProvider)
      ChannelProvider to use to create Channels, which must point at Cloud Pub/Sub endpoint.

      For performance, this client benefits from having multiple underlying connections. See InstantiatingGrpcChannelProvider.Builder.setPoolSize(int).

    • setHeaderProvider

      @BetaApi public Publisher.Builder setHeaderProvider(com.google.api.gax.rpc.HeaderProvider headerProvider)
      Sets the static header provider. The header provider will be called during client construction only once. The headers returned by the provider will be cached and supplied as is for each request issued by the constructed client. Some reserved headers can be overridden (e.g. Content-Type) or merged with the default value (e.g. User-Agent) by the underlying transport layer.
      Parameters:
      headerProvider - the header provider
      Returns:
      the builder
    • setCredentialsProvider

      public Publisher.Builder setCredentialsProvider(com.google.api.gax.core.CredentialsProvider credentialsProvider)
      CredentialsProvider to use to create Credentials to authenticate calls.
    • setBatchingSettings

      public Publisher.Builder setBatchingSettings(com.google.api.gax.batching.BatchingSettings batchingSettings)
    • setRetrySettings

      public Publisher.Builder setRetrySettings(com.google.api.gax.retrying.RetrySettings retrySettings)
      Configures the Publisher's retry parameters.
    • setEnableMessageOrdering

      public Publisher.Builder setEnableMessageOrdering(boolean enableMessageOrdering)
      Sets the message ordering option.
    • setExecutorProvider

      public Publisher.Builder setExecutorProvider(com.google.api.gax.core.ExecutorProvider executorProvider)
      Gives the ability to set a custom executor to be used by the library.
    • setTransform

      @BetaApi public Publisher.Builder setTransform(com.google.api.core.ApiFunction<PubsubMessage,PubsubMessage> messageTransform)
      Gives the ability to set an ApiFunction that will transform the PubsubMessage before it is sent
    • setEndpoint

      public Publisher.Builder setEndpoint(String endpoint)
      Gives the ability to override the gRPC endpoint.
    • setEnableCompression

      public Publisher.Builder setEnableCompression(boolean enableCompression)
      Gives the ability to enable transport compression.
    • setCompressionBytesThreshold

      public Publisher.Builder setCompressionBytesThreshold(long compressionBytesThreshold)
      Sets the threshold (in bytes) above which messages are compressed for transport. Only takes effect if setEnableCompression(true) is also called."
    • getDefaultBatchingSettings

      public static com.google.api.gax.batching.BatchingSettings getDefaultBatchingSettings()
      Returns the default BatchingSettings used by the client if settings are not provided.
    • build

      public Publisher build() throws IOException
      Throws:
      IOException