Class ClientSettings.Builder<SettingsT extends ClientSettings<SettingsT>,B extends ClientSettings.Builder<SettingsT,B>>

java.lang.Object
com.google.api.gax.rpc.ClientSettings.Builder<SettingsT,B>
Enclosing class:
ClientSettings<SettingsT extends ClientSettings<SettingsT>>

public abstract static class ClientSettings.Builder<SettingsT extends ClientSettings<SettingsT>,B extends ClientSettings.Builder<SettingsT,B>> extends Object
  • Constructor Details

    • Builder

      protected Builder(ClientSettings settings)
      Create a builder from a ClientSettings object.
    • Builder

      protected Builder(StubSettings.Builder stubSettings)
      Create a builder from a StubSettings object.
    • Builder

      protected Builder()
  • Method Details

    • self

      protected B self()
    • getStubSettings

      protected StubSettings.Builder getStubSettings()
    • setExecutorProvider

      @Deprecated public B setExecutorProvider(ExecutorProvider executorProvider)
      Deprecated.
      Please use setBackgroundExecutorProvider(ExecutorProvider) for setting executor to use for running scheduled API call logic. To set executor for TransportChannelProvider, please use TransportChannelProvider.withExecutor(Executor) instead.
      Sets the ExecutorProvider to use for getting the executor to use for running asynchronous API call logic (such as retries and long-running operations), and also to pass to the transport settings if an executor is needed for the transport and it doesn't have its own executor provider.
    • setBackgroundExecutorProvider

      public B setBackgroundExecutorProvider(ExecutorProvider executorProvider)
      Sets the ExecutorProvider to use for getting the executor to use for running scheduled API call logic (such as retries and long-running operations). This will not set the executor in TransportChannelProvider. To set executor for TransportChannelProvider, please use TransportChannelProvider.withExecutor(Executor).
    • setCredentialsProvider

      public B setCredentialsProvider(CredentialsProvider credentialsProvider)
      Sets the CredentialsProvider to use for getting the credentials to make calls with.
    • setHeaderProvider

      public B setHeaderProvider(HeaderProvider headerProvider)
      Sets the HeaderProvider for getting custom static headers for http requests. 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.
    • setInternalHeaderProvider

      protected B setInternalHeaderProvider(HeaderProvider internalHeaderProvider)
      Sets the HeaderProvider for getting internal (library-defined) static headers for http requests. 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.
    • setTransportChannelProvider

      public B setTransportChannelProvider(TransportChannelProvider transportChannelProvider)
      Sets the TransportProvider to use for getting the transport-specific context to make calls with.
    • setClock

      public B setClock(ApiClock clock)
      Sets the clock to use for retry logic.

      This will default to a system clock if it is not set.

    • setEndpoint

      public B setEndpoint(String endpoint)
    • setQuotaProjectId

      public B setQuotaProjectId(String quotaProjectId)
    • setWatchdogProvider

      public B setWatchdogProvider(@Nullable WatchdogProvider watchdogProvider)
    • setWatchdogCheckInterval

      public B setWatchdogCheckInterval(@Nullable org.threeten.bp.Duration checkInterval)
    • getExecutorProvider

      @Deprecated public ExecutorProvider getExecutorProvider()
      Deprecated.
      Please use getBackgroundExecutorProvider() for getting the executor provider that's used for running scheduled API call logic.
      Gets the ExecutorProvider that was previously set on this Builder. This ExecutorProvider is to use for running asynchronous API call logic (such as retries and long-running operations), and also to pass to the transport settings if an executor is needed for the transport and it doesn't have its own executor provider.
    • getBackgroundExecutorProvider

      public ExecutorProvider getBackgroundExecutorProvider()
      Gets the ExecutorProvider that was previously set on this Builder. This ExecutorProvider is to use for running asynchronous API call logic (such as retries and long-running operations). This ExecutorProvider is not used to set the executor in TransportChannelProvider.
    • getTransportChannelProvider

      public TransportChannelProvider getTransportChannelProvider()
      Gets the TransportProvider that was previously set on this Builder.
    • getCredentialsProvider

      public CredentialsProvider getCredentialsProvider()
      Gets the CredentialsProvider that was previously set on this Builder.
    • getHeaderProvider

      public HeaderProvider getHeaderProvider()
      Gets the custom HeaderProvider that was previously set on this Builder.
    • getInternalHeaderProvider

      protected HeaderProvider getInternalHeaderProvider()
      Gets the internal HeaderProvider that was previously set on this Builder.
    • getClock

      public ApiClock getClock()
      Gets the ApiClock that was previously set on this Builder.
    • getEndpoint

      public String getEndpoint()
    • getQuotaProjectId

      public String getQuotaProjectId()
      Gets the QuotaProjectId that was previously set on this Builder.
    • getWatchdogProvider

      @Nullable public WatchdogProvider getWatchdogProvider()
    • getWatchdogCheckInterval

      @Nullable public org.threeten.bp.Duration getWatchdogCheckInterval()
    • applyToAllUnaryMethods

      protected static void applyToAllUnaryMethods(Iterable<UnaryCallSettings.Builder<?,?>> methodSettingsBuilders, ApiFunction<UnaryCallSettings.Builder<?,?>,Void> settingsUpdater)
      Applies the given settings updater function to the given method settings builders.
    • build

      public abstract SettingsT build() throws IOException
      Throws:
      IOException
    • toString

      public String toString()
      Overrides:
      toString in class Object