Class BaseLoadBalancer.Builder<N extends BaseNode<N>,T extends BaseLoadBalancer<N,T>>
- java.lang.Object
-
- org.jclouds.rackspace.cloudloadbalancers.v1.domain.internal.BaseLoadBalancer.Builder<N,T>
-
- Direct Known Subclasses:
CreateLoadBalancer.Builder
,LoadBalancer.Builder
- Enclosing class:
- BaseLoadBalancer<N extends BaseNode<N>,T extends BaseLoadBalancer<N,T>>
public static class BaseLoadBalancer.Builder<N extends BaseNode<N>,T extends BaseLoadBalancer<N,T>> extends Object
-
-
Field Summary
Fields Modifier and Type Field Description protected BaseLoadBalancer.Algorithm
algorithm
protected Map<String,Boolean>
connectionLogging
protected ConnectionThrottle
connectionThrottle
protected Boolean
halfClosed
protected HealthMonitor
healthMonitor
protected String
name
protected Set<N>
nodes
protected Integer
port
protected String
protocol
protected Map<String,SessionPersistence>
sessionPersistence
protected Integer
timeout
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BaseLoadBalancer.Builder<N,T>
algorithm(BaseLoadBalancer.Algorithm algorithm)
Algorithm that defines how traffic should be directed between back-end nodes.BaseLoadBalancer<N,T>
build()
BaseLoadBalancer.Builder<N,T>
connectionLogging(Boolean connectionLogging)
Current connection logging configuration.BaseLoadBalancer.Builder<N,T>
connectionThrottle(ConnectionThrottle connectionThrottle)
Specifies limits on the number of connections per IP address to help mitigate malicious or abusive traffic to your applications.BaseLoadBalancer.Builder<N,T>
from(T baseLB)
BaseLoadBalancer.Builder<N,T>
halfClosed(Boolean halfClosed)
Enable or Disable Half-Closed support for the load balancer.BaseLoadBalancer.Builder<N,T>
healthMonitor(HealthMonitor healthMonitor)
The type of health monitor check to perform to ensure that the service is performing properly.BaseLoadBalancer.Builder<N,T>
name(String name)
Required.BaseLoadBalancer.Builder<N,T>
node(N node)
BaseLoadBalancer.Builder<N,T>
nodes(Iterable<N> nodes)
Required.BaseLoadBalancer.Builder<N,T>
port(Integer port)
Required if the protocol being used is not inReportApi#listProtocols()
or the protocol is inReportApi#listProtocols()
but port=0.BaseLoadBalancer.Builder<N,T>
protocol(String protocol)
Required.BaseLoadBalancer.Builder<N,T>
sessionPersistenceType(SessionPersistence sessionPersistenceType)
Specifies whether multiple requests from clients are directed to the same node.BaseLoadBalancer.Builder<N,T>
timeout(Integer timeout)
The timeout value for the load balancer and communications with its nodes.
-
-
-
Field Detail
-
name
protected String name
-
protocol
protected String protocol
-
port
protected Integer port
-
algorithm
protected BaseLoadBalancer.Algorithm algorithm
-
timeout
protected Integer timeout
-
halfClosed
protected Boolean halfClosed
-
sessionPersistence
protected Map<String,SessionPersistence> sessionPersistence
-
connectionThrottle
protected ConnectionThrottle connectionThrottle
-
healthMonitor
protected HealthMonitor healthMonitor
-
-
Method Detail
-
name
public BaseLoadBalancer.Builder<N,T> name(String name)
Required. Name of the load balancer to create. The name must be 128 characters or less in length, and all UTF-8 characters are valid.
-
protocol
public BaseLoadBalancer.Builder<N,T> protocol(String protocol)
Required. Protocol of the service which is being load balanced.- See Also:
ReportApi#listProtocols()
-
port
public BaseLoadBalancer.Builder<N,T> port(@Nullable Integer port)
Required if the protocol being used is not inReportApi#listProtocols()
or the protocol is inReportApi#listProtocols()
but port=0. Port number for the service you are load balancing.
-
nodes
public BaseLoadBalancer.Builder<N,T> nodes(Iterable<N> nodes)
Required. Nodes to be added to the load balancer.
-
node
public BaseLoadBalancer.Builder<N,T> node(N node)
-
algorithm
public BaseLoadBalancer.Builder<N,T> algorithm(@Nullable BaseLoadBalancer.Algorithm algorithm)
Algorithm that defines how traffic should be directed between back-end nodes.- See Also:
BaseLoadBalancer.Algorithm
-
timeout
public BaseLoadBalancer.Builder<N,T> timeout(@Nullable Integer timeout)
The timeout value for the load balancer and communications with its nodes. Defaults to 30 seconds with a maximum of 120 seconds.
-
halfClosed
public BaseLoadBalancer.Builder<N,T> halfClosed(@Nullable Boolean halfClosed)
Enable or Disable Half-Closed support for the load balancer. Half-Closed support provides the ability for one end of the connection to terminate its output, while still receiving data from the other end. Only available for TCP/TCP_CLIENT_FIRST protocols.
-
sessionPersistenceType
public BaseLoadBalancer.Builder<N,T> sessionPersistenceType(@Nullable SessionPersistence sessionPersistenceType)
Specifies whether multiple requests from clients are directed to the same node.- See Also:
SessionPersistence
-
connectionLogging
public BaseLoadBalancer.Builder<N,T> connectionLogging(@Nullable Boolean connectionLogging)
Current connection logging configuration.
-
connectionThrottle
public BaseLoadBalancer.Builder<N,T> connectionThrottle(@Nullable ConnectionThrottle connectionThrottle)
Specifies limits on the number of connections per IP address to help mitigate malicious or abusive traffic to your applications.- See Also:
ConnectionThrottle
-
healthMonitor
public BaseLoadBalancer.Builder<N,T> healthMonitor(@Nullable HealthMonitor healthMonitor)
The type of health monitor check to perform to ensure that the service is performing properly.- See Also:
HealthMonitor
-
build
public BaseLoadBalancer<N,T> build()
-
from
public BaseLoadBalancer.Builder<N,T> from(T baseLB)
-
-