B - The type of builder that should be returned by the fluent builder methods in this interface.C - The type of client generated by this builder.public interface SdkClientBuilder<B extends SdkClientBuilder<B,C>,C>
Implementations of this interface are mutable and not thread-safe.
| Modifier and Type | Method and Description |
|---|---|
default B |
addPlugin(SdkPlugin plugin)
Adds a plugin to the client builder.
|
B |
endpointOverride(URI endpointOverride)
Configure the endpoint with which the SDK should communicate.
|
ClientOverrideConfiguration |
overrideConfiguration()
Retrieve the current override configuration.
|
B |
overrideConfiguration(ClientOverrideConfiguration overrideConfiguration)
Specify overrides to the default SDK configuration that should be used for clients created by this builder.
|
default B |
overrideConfiguration(Consumer<ClientOverrideConfiguration.Builder> overrideConfiguration)
Similar to
overrideConfiguration(ClientOverrideConfiguration), but takes a lambda to configure a new
ClientOverrideConfiguration.Builder. |
default List<SdkPlugin> |
plugins()
Returns the list of plugins configured on the client builder.
|
default B |
putAuthScheme(<any> authScheme)
Configure this client with an additional auth scheme, or replace one already on the client.
|
B overrideConfiguration(ClientOverrideConfiguration overrideConfiguration)
default B overrideConfiguration(Consumer<ClientOverrideConfiguration.Builder> overrideConfiguration)
overrideConfiguration(ClientOverrideConfiguration), but takes a lambda to configure a new
ClientOverrideConfiguration.Builder. This removes the need to called ClientOverrideConfiguration.builder()
and ClientOverrideConfiguration.Builder#build().ClientOverrideConfiguration overrideConfiguration()
ClientOverrideConfiguration.toBuilder().B endpointOverride(URI endpointOverride)
It is important to know that EndpointProviders and the endpoint override on the client are not mutually
exclusive. In all existing cases, the endpoint override is passed as a parameter to the provider and the provider *may*
modify it. For example, the S3 provider may add the bucket name as a prefix to the endpoint override for virtual bucket
addressing.
default B putAuthScheme(<any> authScheme)
By default, the SDK will only know about default auth schemes that ship with the service. If you want to modify those existing auth schemes or add a custom one (you select with a custom auth scheme resolver), you can add that new auth scheme with this method.
default B addPlugin(SdkPlugin plugin)
Copyright © 2023. All rights reserved.