Class EurekaEndpointGroupBuilder
java.lang.Object
com.linecorp.armeria.client.AbstractClientOptionsBuilder
com.linecorp.armeria.client.AbstractWebClientBuilder
com.linecorp.armeria.client.eureka.EurekaEndpointGroupBuilder
- All Implemented Interfaces:
com.linecorp.armeria.client.endpoint.DynamicEndpointGroupSetters
public final class EurekaEndpointGroupBuilder
extends com.linecorp.armeria.client.AbstractWebClientBuilder
implements com.linecorp.armeria.client.endpoint.DynamicEndpointGroupSetters
Builds a
EurekaEndpointGroup.-
Method Summary
Modifier and TypeMethodDescriptionaddHeader(CharSequence name, Object value) addHeaders(Iterable<? extends Map.Entry<? extends CharSequence, ?>> headers) allowEmptyEndpoints(boolean allowEmptyEndpoints) Sets the specifiedappName.auth(com.linecorp.armeria.common.auth.AuthToken token) auth(com.linecorp.armeria.common.auth.BasicToken token) auth(com.linecorp.armeria.common.auth.OAuth1aToken token) auth(com.linecorp.armeria.common.auth.OAuth2Token token) build()Returns a newly-createdEurekaEndpointGroupbased on the properties set so far.contextCustomizer(Consumer<? super com.linecorp.armeria.client.ClientRequestContext> contextCustomizer) decorator(com.linecorp.armeria.client.DecoratingHttpClientFunction decorator) decorator(Function<? super com.linecorp.armeria.client.HttpClient, ? extends com.linecorp.armeria.client.HttpClient> decorator) endpointRemapper(Function<? super com.linecorp.armeria.client.Endpoint, ? extends com.linecorp.armeria.client.endpoint.EndpointGroup> endpointRemapper) factory(com.linecorp.armeria.client.ClientFactory factory) followRedirects(com.linecorp.armeria.client.redirect.RedirectConfig redirectConfig) instanceId(String instanceId) Sets the specifiedinstanceId.maxResponseLength(long maxResponseLength) option(com.linecorp.armeria.client.ClientOption<T> option, T value) option(com.linecorp.armeria.client.ClientOptionValue<T> optionValue) options(com.linecorp.armeria.client.ClientOptions options) options(com.linecorp.armeria.client.ClientOptionValue<?>... options) Sets the specifiedregions.Sets the specifiedregions.registryFetchInterval(Duration registryFetchInterval) Sets the interval between fetching registry requests.registryFetchIntervalMillis(long registryFetchIntervalMillis) Sets the interval between fetching registry requests in milliseconds.registryFetchIntervalSeconds(long registryFetchIntervalSeconds) Deprecated.requestAutoAbortDelay(Duration delay) requestAutoAbortDelayMillis(long delayMillis) requestIdGenerator(Supplier<com.linecorp.armeria.common.RequestId> requestIdGenerator) responseTimeout(Duration responseTimeout) responseTimeoutMillis(long responseTimeoutMillis) rpcDecorator(com.linecorp.armeria.client.DecoratingRpcClientFunction decorator) rpcDecorator(Function<? super com.linecorp.armeria.client.RpcClient, ? extends com.linecorp.armeria.client.RpcClient> decorator) secureVipAddress(String secureVipAddress) Sets the specifiedsecureVipAddress.selectionStrategy(com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy selectionStrategy) Sets theEndpointSelectionStrategyof theEurekaEndpointGroup.selectionTimeout(Duration selectionTimeout) Sets the timeout to wait until a successfulEndpointselection.selectionTimeoutMillis(long selectionTimeoutMillis) Sets the timeout to wait until a successfulEndpointselection.setHeader(CharSequence name, Object value) setHeaders(Iterable<? extends Map.Entry<? extends CharSequence, ?>> headers) successFunction(com.linecorp.armeria.common.SuccessFunction successFunction) vipAddress(String vipAddress) Sets the specifiedvipAddress.writeTimeout(Duration writeTimeout) writeTimeoutMillis(long writeTimeoutMillis) Methods inherited from class com.linecorp.armeria.client.AbstractWebClientBuilder
buildWebClient, clientBuilderParamsMethods inherited from class com.linecorp.armeria.client.AbstractClientOptionsBuilder
buildOptions, buildOptions, contextHook
-
Method Details
-
selectionStrategy
public EurekaEndpointGroupBuilder selectionStrategy(com.linecorp.armeria.client.endpoint.EndpointSelectionStrategy selectionStrategy) Sets theEndpointSelectionStrategyof theEurekaEndpointGroup. -
regions
Sets the specifiedregions.EurekaEndpointGroupwill retrieve the registry information which belongs to theregions. -
regions
Sets the specifiedregions.EurekaEndpointGroupwill retrieve the registry information which belongs to theregions. -
appName
Sets the specifiedappName.EurekaEndpointGroupwill retrieve the registry information whose application name is the specifiedappName.- Throws:
IllegalStateException- ifvipAddress(String)orsecureVipAddress(String)is called already
-
instanceId
Sets the specifiedinstanceId.EurekaEndpointGroupwill only retrieve the registry information whose instance ID is the specifiedinstanceId.- Throws:
IllegalStateException- ifvipAddress(String)orsecureVipAddress(String)is called already
-
vipAddress
Sets the specifiedvipAddress.EurekaEndpointGroupwill retrieve the registry information whose VIP address is the specifiedvipAddress.- Throws:
IllegalStateException- ifappName(String),instanceId(String)orsecureVipAddress(String)is called already
-
secureVipAddress
Sets the specifiedsecureVipAddress.EurekaEndpointGroupwill retrieve the registry information whose VIP address is the specifiedsecureVipAddress.- Throws:
IllegalStateException- ifappName(String),instanceId(String)orvipAddress(String)is called already
-
registryFetchInterval
Sets the interval between fetching registry requests. 30000L milliseconds is used by default and it's not recommended to modify this value. See fetch-registry. -
registryFetchIntervalSeconds
@Deprecated public EurekaEndpointGroupBuilder registryFetchIntervalSeconds(long registryFetchIntervalSeconds) Deprecated.Sets the interval between fetching registry requests in seconds.30is used by default and it's not recommended to modify this value. See fetch-registry. -
registryFetchIntervalMillis
Sets the interval between fetching registry requests in milliseconds. 30000L is used by default and it's not recommended to modify this value. See fetch-registry. -
build
Returns a newly-createdEurekaEndpointGroupbased on the properties set so far. Note that ifRetryingClientwas not set usingdecorator(DecoratingHttpClientFunction),RetryingClientis applied automatically using RetryingClient.newDecorator(RetryRule.failsafe(), 3). -
options
- Overrides:
optionsin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
options
public EurekaEndpointGroupBuilder options(com.linecorp.armeria.client.ClientOptionValue<?>... options) - Overrides:
optionsin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
options
public EurekaEndpointGroupBuilder options(Iterable<com.linecorp.armeria.client.ClientOptionValue<?>> options) - Overrides:
optionsin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
option
public <T> EurekaEndpointGroupBuilder option(com.linecorp.armeria.client.ClientOption<T> option, T value) - Overrides:
optionin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
option
public <T> EurekaEndpointGroupBuilder option(com.linecorp.armeria.client.ClientOptionValue<T> optionValue) - Overrides:
optionin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
factory
- Overrides:
factoryin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
writeTimeout
- Overrides:
writeTimeoutin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
writeTimeoutMillis
- Overrides:
writeTimeoutMillisin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
responseTimeout
- Overrides:
responseTimeoutin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
responseTimeoutMillis
- Overrides:
responseTimeoutMillisin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
maxResponseLength
- Overrides:
maxResponseLengthin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
requestAutoAbortDelay
- Overrides:
requestAutoAbortDelayin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
requestAutoAbortDelayMillis
- Overrides:
requestAutoAbortDelayMillisin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
requestIdGenerator
public EurekaEndpointGroupBuilder requestIdGenerator(Supplier<com.linecorp.armeria.common.RequestId> requestIdGenerator) - Overrides:
requestIdGeneratorin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
successFunction
public EurekaEndpointGroupBuilder successFunction(com.linecorp.armeria.common.SuccessFunction successFunction) - Overrides:
successFunctionin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
endpointRemapper
public EurekaEndpointGroupBuilder endpointRemapper(Function<? super com.linecorp.armeria.client.Endpoint, ? extends com.linecorp.armeria.client.endpoint.EndpointGroup> endpointRemapper) - Overrides:
endpointRemapperin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
decorator
public EurekaEndpointGroupBuilder decorator(Function<? super com.linecorp.armeria.client.HttpClient, ? extends com.linecorp.armeria.client.HttpClient> decorator) - Overrides:
decoratorin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
decorator
public EurekaEndpointGroupBuilder decorator(com.linecorp.armeria.client.DecoratingHttpClientFunction decorator) - Overrides:
decoratorin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
rpcDecorator
public EurekaEndpointGroupBuilder rpcDecorator(Function<? super com.linecorp.armeria.client.RpcClient, ? extends com.linecorp.armeria.client.RpcClient> decorator) - Overrides:
rpcDecoratorin classcom.linecorp.armeria.client.AbstractWebClientBuilder
-
rpcDecorator
public EurekaEndpointGroupBuilder rpcDecorator(com.linecorp.armeria.client.DecoratingRpcClientFunction decorator) - Overrides:
rpcDecoratorin classcom.linecorp.armeria.client.AbstractWebClientBuilder
-
clearDecorators
- Overrides:
clearDecoratorsin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
addHeader
- Overrides:
addHeaderin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
addHeaders
public EurekaEndpointGroupBuilder addHeaders(Iterable<? extends Map.Entry<? extends CharSequence, ?>> headers) - Overrides:
addHeadersin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
setHeader
- Overrides:
setHeaderin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
setHeaders
public EurekaEndpointGroupBuilder setHeaders(Iterable<? extends Map.Entry<? extends CharSequence, ?>> headers) - Overrides:
setHeadersin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
auth
- Overrides:
authin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
auth
- Overrides:
authin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
auth
- Overrides:
authin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
auth
- Overrides:
authin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
followRedirects
- Overrides:
followRedirectsin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
followRedirects
public EurekaEndpointGroupBuilder followRedirects(com.linecorp.armeria.client.redirect.RedirectConfig redirectConfig) - Overrides:
followRedirectsin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
contextCustomizer
public EurekaEndpointGroupBuilder contextCustomizer(Consumer<? super com.linecorp.armeria.client.ClientRequestContext> contextCustomizer) - Overrides:
contextCustomizerin classcom.linecorp.armeria.client.AbstractClientOptionsBuilder
-
allowEmptyEndpoints
- Specified by:
allowEmptyEndpointsin interfacecom.linecorp.armeria.client.endpoint.DynamicEndpointGroupSetters
-
selectionTimeout
Sets the timeout to wait until a successfulEndpointselection.Duration.ZEROdisables the timeout. If unspecified,Flags.defaultResponseTimeoutMillis()is used by default.- Specified by:
selectionTimeoutin interfacecom.linecorp.armeria.client.endpoint.DynamicEndpointGroupSetters
-
selectionTimeoutMillis
Sets the timeout to wait until a successfulEndpointselection.0disables the timeout. If unspecified,Flags.defaultResponseTimeoutMillis()is used by default.- Specified by:
selectionTimeoutMillisin interfacecom.linecorp.armeria.client.endpoint.DynamicEndpointGroupSetters
-
registryFetchIntervalMillis(long).