Class LoadBalancer.Builder
- java.lang.Object
-
- org.jclouds.rackspace.cloudloadbalancers.v1.domain.internal.BaseLoadBalancer.Builder<Node,LoadBalancer>
-
- org.jclouds.rackspace.cloudloadbalancers.v1.domain.LoadBalancer.Builder
-
- Enclosing class:
- LoadBalancer
public static class LoadBalancer.Builder extends BaseLoadBalancer.Builder<Node,LoadBalancer>
-
-
Field Summary
-
Fields inherited from class org.jclouds.rackspace.cloudloadbalancers.v1.domain.internal.BaseLoadBalancer.Builder
algorithm, connectionLogging, connectionThrottle, halfClosed, healthMonitor, name, nodes, port, protocol, sessionPersistence, timeout
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LoadBalancer.Builder
accessRules(Iterable<AccessRuleWithId> accessRules)
LoadBalancer.Builder
algorithm(BaseLoadBalancer.Algorithm algorithm)
Algorithm that defines how traffic should be directed between back-end nodes.LoadBalancer
build()
LoadBalancer.Builder
clusterName(String clusterName)
LoadBalancer.Builder
connectionLogging(Boolean connectionLogging)
Current connection logging configuration.LoadBalancer.Builder
connectionThrottle(ConnectionThrottle connectionThrottle)
Specifies limits on the number of connections per IP address to help mitigate malicious or abusive traffic to your applications.LoadBalancer.Builder
contentCaching(boolean contentCaching)
LoadBalancer.Builder
created(Date created)
LoadBalancer.Builder
from(LoadBalancer in)
LoadBalancer.Builder
halfClosed(Boolean halfClosed)
Enable or Disable Half-Closed support for the load balancer.LoadBalancer.Builder
healthMonitor(HealthMonitor healthMonitor)
The type of health monitor check to perform to ensure that the service is performing properly.LoadBalancer.Builder
id(int id)
LoadBalancer.Builder
metadata(Metadata metadata)
LoadBalancer.Builder
name(String name)
Required.LoadBalancer.Builder
node(Node node)
LoadBalancer.Builder
nodeCount(int nodeCount)
LoadBalancer.Builder
nodes(Iterable<Node> nodes)
Required.LoadBalancer.Builder
port(Integer port)
Required if the protocol being used is not inReportApi#listProtocols()
or the protocol is inReportApi#listProtocols()
but port=0.LoadBalancer.Builder
protocol(String protocol)
Required.LoadBalancer.Builder
region(String region)
LoadBalancer.Builder
sessionPersistenceType(SessionPersistence sessionPersistenceType)
Specifies whether multiple requests from clients are directed to the same node.LoadBalancer.Builder
sourceAddresses(SourceAddresses sourceAddresses)
LoadBalancer.Builder
sslTermination(SSLTermination sslTermination)
LoadBalancer.Builder
status(LoadBalancer.Status status)
LoadBalancer.Builder
timeout(Integer timeout)
The timeout value for the load balancer and communications with its nodes.LoadBalancer.Builder
updated(Date updated)
LoadBalancer.Builder
uri(URI uri)
LoadBalancer.Builder
virtualIPs(Iterable<VirtualIPWithId> virtualIPs)
-
-
-
Method Detail
-
region
public LoadBalancer.Builder region(String region)
-
id
public LoadBalancer.Builder id(int id)
-
status
public LoadBalancer.Builder status(LoadBalancer.Status status)
-
virtualIPs
public LoadBalancer.Builder virtualIPs(Iterable<VirtualIPWithId> virtualIPs)
-
clusterName
public LoadBalancer.Builder clusterName(String clusterName)
-
created
public LoadBalancer.Builder created(Date created)
-
updated
public LoadBalancer.Builder updated(Date updated)
-
contentCaching
public LoadBalancer.Builder contentCaching(boolean contentCaching)
-
nodeCount
public LoadBalancer.Builder nodeCount(int nodeCount)
- See Also:
LoadBalancer.getNodeCount()
-
sslTermination
public LoadBalancer.Builder sslTermination(SSLTermination sslTermination)
-
sourceAddresses
public LoadBalancer.Builder sourceAddresses(SourceAddresses sourceAddresses)
-
accessRules
public LoadBalancer.Builder accessRules(Iterable<AccessRuleWithId> accessRules)
-
metadata
public LoadBalancer.Builder metadata(Metadata metadata)
-
uri
public LoadBalancer.Builder uri(URI uri)
-
build
public LoadBalancer build()
- Overrides:
build
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
nodes
public LoadBalancer.Builder nodes(Iterable<Node> nodes)
Required. Nodes to be added to the load balancer.- Overrides:
nodes
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
node
public LoadBalancer.Builder node(Node node)
- Overrides:
node
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
algorithm
public LoadBalancer.Builder algorithm(BaseLoadBalancer.Algorithm algorithm)
Algorithm that defines how traffic should be directed between back-end nodes.- Overrides:
algorithm
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
- See Also:
BaseLoadBalancer.Algorithm
-
name
public LoadBalancer.Builder 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.- Overrides:
name
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
port
public LoadBalancer.Builder port(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.- Overrides:
port
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
protocol
public LoadBalancer.Builder protocol(String protocol)
Required. Protocol of the service which is being load balanced.- Overrides:
protocol
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
- See Also:
ReportApi#listProtocols()
-
timeout
public LoadBalancer.Builder 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.- Overrides:
timeout
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
halfClosed
public LoadBalancer.Builder 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.- Overrides:
halfClosed
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
sessionPersistenceType
public LoadBalancer.Builder sessionPersistenceType(@Nullable SessionPersistence sessionPersistenceType)
Specifies whether multiple requests from clients are directed to the same node.- Overrides:
sessionPersistenceType
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
- See Also:
SessionPersistence
-
connectionLogging
public LoadBalancer.Builder connectionLogging(@Nullable Boolean connectionLogging)
Current connection logging configuration.- Overrides:
connectionLogging
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
connectionThrottle
public LoadBalancer.Builder connectionThrottle(@Nullable ConnectionThrottle connectionThrottle)
Specifies limits on the number of connections per IP address to help mitigate malicious or abusive traffic to your applications.- Overrides:
connectionThrottle
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
- See Also:
ConnectionThrottle
-
healthMonitor
public LoadBalancer.Builder healthMonitor(@Nullable HealthMonitor healthMonitor)
The type of health monitor check to perform to ensure that the service is performing properly.- Overrides:
healthMonitor
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
- See Also:
HealthMonitor
-
from
public LoadBalancer.Builder from(LoadBalancer in)
- Overrides:
from
in classBaseLoadBalancer.Builder<Node,LoadBalancer>
-
-