Class DefaultHttpLoadBalancerProvider
java.lang.Object
io.servicetalk.loadbalancer.experimental.DefaultHttpLoadBalancerProvider
- All Implemented Interfaces:
HttpProviders.SingleAddressHttpClientBuilderProvider
public class DefaultHttpLoadBalancerProvider
extends Object
implements HttpProviders.SingleAddressHttpClientBuilderProvider
A client builder provider that supports enabling the new `DefaultLoadBalancer` in applications via property flags.
See the packages README.md for more details.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected <U> String
clientNameFromAddress
(U address) Extract the service name from the address object.final <U,
R> SingleAddressHttpClientBuilder<U, R> newBuilder
(U address, SingleAddressHttpClientBuilder<U, R> builder) Returns aSingleAddressHttpClientBuilder
based on the address and pre-initializedSingleAddressHttpClientBuilder
.
-
Constructor Details
-
DefaultHttpLoadBalancerProvider
public DefaultHttpLoadBalancerProvider()
-
-
Method Details
-
newBuilder
public final <U,R> SingleAddressHttpClientBuilder<U,R> newBuilder(U address, SingleAddressHttpClientBuilder<U, R> builder) Description copied from interface:HttpProviders.SingleAddressHttpClientBuilderProvider
Returns aSingleAddressHttpClientBuilder
based on the address and pre-initializedSingleAddressHttpClientBuilder
.This method may return the pre-initialized
builder
as-is, or apply custom builder settings before returning it, or wrap it (DelegatingSingleAddressHttpClientBuilder
may be helpful).- Specified by:
newBuilder
in interfaceHttpProviders.SingleAddressHttpClientBuilderProvider
- Type Parameters:
U
- the type of address before resolution (unresolved address)R
- the type of address after resolution (resolved address)- Parameters:
address
- a remote address used to create aSingleAddressHttpClientBuilder
, it can be resolved or unresolved based on the factory usedbuilder
- pre-initializedSingleAddressHttpClientBuilder
- Returns:
- a
SingleAddressHttpClientBuilder
based on the address and pre-initializedSingleAddressHttpClientBuilder
. - See Also:
-
clientNameFromAddress
Extract the service name from the address object. Note: this is a protected method to allow overriding for custom address types.- Type Parameters:
U
- the unresolved type of the address.- Parameters:
address
- the address from which to extract the service name.- Returns:
- the String representation of the provided address.
-