public class LoadBalancerBuilder<T extends Server>
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
ZoneAwareLoadBalancer<T> |
buildDynamicServerListLoadBalancer()
|
ZoneAwareLoadBalancer<T> |
buildDynamicServerListLoadBalancerWithUpdater()
|
BaseLoadBalancer |
buildFixedServerListLoadBalancer(java.util.List<T> servers) |
ILoadBalancer |
buildLoadBalancerFromConfigWithReflection()
Build a load balancer using the configuration from the
IClientConfig only. |
static <T extends Server> |
newBuilder() |
LoadBalancerBuilder<T> |
withClientConfig(com.netflix.client.config.IClientConfig config) |
LoadBalancerBuilder<T> |
withDynamicServerList(ServerList<T> serverListImpl) |
LoadBalancerBuilder<T> |
withPing(IPing ping) |
LoadBalancerBuilder<T> |
withRule(IRule rule) |
LoadBalancerBuilder<T> |
withServerListFilter(ServerListFilter<T> serverListFilter) |
LoadBalancerBuilder<T> |
withServerListUpdater(ServerListUpdater serverListUpdater) |
public static <T extends Server> LoadBalancerBuilder<T> newBuilder()
public LoadBalancerBuilder<T> withClientConfig(com.netflix.client.config.IClientConfig config)
public LoadBalancerBuilder<T> withRule(IRule rule)
public LoadBalancerBuilder<T> withPing(IPing ping)
public LoadBalancerBuilder<T> withDynamicServerList(ServerList<T> serverListImpl)
public LoadBalancerBuilder<T> withServerListFilter(ServerListFilter<T> serverListFilter)
public LoadBalancerBuilder<T> withServerListUpdater(ServerListUpdater serverListUpdater)
public BaseLoadBalancer buildFixedServerListLoadBalancer(java.util.List<T> servers)
public ZoneAwareLoadBalancer<T> buildDynamicServerListLoadBalancer()
ZoneAwareLoadBalancer
with a dynamic ServerList
and an IRule
. The ServerList
can be
either set in the withDynamicServerList(ServerList)
or in the IClientConfig
using CommonClientConfigKey.NIWSServerListClassName
.
The IRule
can be either set by withRule(IRule)
or in the IClientConfig
using
CommonClientConfigKey.NFLoadBalancerRuleClassName
.public ZoneAwareLoadBalancer<T> buildDynamicServerListLoadBalancerWithUpdater()
ZoneAwareLoadBalancer
with a dynamic ServerList
and an IRule
and a ServerListUpdater
.
The ServerList
can be either set in the withDynamicServerList(ServerList)
or in the IClientConfig
using CommonClientConfigKey.NIWSServerListClassName
.
The IRule
can be either set by withRule(IRule)
or in the IClientConfig
using
CommonClientConfigKey.NFLoadBalancerRuleClassName
.
The ServerListUpdater
can be either set by withServerListUpdater(ServerListUpdater)
or
in the IClientConfig
using CommonClientConfigKey.ServerListUpdaterClassName
.public ILoadBalancer buildLoadBalancerFromConfigWithReflection()
IClientConfig
only. It uses reflection to initialize necessary load balancer
components.