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.Algorithmalgorithmprotected Map<String,Boolean>connectionLoggingprotected ConnectionThrottleconnectionThrottleprotected BooleanhalfClosedprotected HealthMonitorhealthMonitorprotected Stringnameprotected Set<N>nodesprotected Integerportprotected Stringprotocolprotected Map<String,SessionPersistence>sessionPersistenceprotected Integertimeout
-
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)
-
-