Class NetworkLoadBalancer.Builder
- java.lang.Object
-
- com.oracle.bmc.networkloadbalancer.model.NetworkLoadBalancer.Builder
-
- Enclosing class:
- NetworkLoadBalancer
public static class NetworkLoadBalancer.Builder extends Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description NetworkLoadBalancer.Builder
backendSets(Map<String,BackendSet> backendSets)
Backend sets associated with the network load balancer.NetworkLoadBalancer
build()
NetworkLoadBalancer.Builder
compartmentId(String compartmentId)
The OCID of the compartment containing the network load balancer.NetworkLoadBalancer.Builder
copy(NetworkLoadBalancer model)
NetworkLoadBalancer.Builder
definedTags(Map<String,Map<String,Object>> definedTags)
Defined tags for this resource.NetworkLoadBalancer.Builder
displayName(String displayName)
A user-friendly name, which does not have to be unique, and can be changed.NetworkLoadBalancer.Builder
freeformTags(Map<String,String> freeformTags)
Free-form tags for this resource.NetworkLoadBalancer.Builder
id(String id)
The OCID of the network load balancer.NetworkLoadBalancer.Builder
ipAddresses(List<IpAddress> ipAddresses)
An array of IP addresses.NetworkLoadBalancer.Builder
isPreserveSourceDestination(Boolean isPreserveSourceDestination)
When enabled, the skipSourceDestinationCheck parameter is automatically enabled on the load balancer VNIC.NetworkLoadBalancer.Builder
isPrivate(Boolean isPrivate)
Whether the network load balancer has a virtual cloud network-local (private) IP address.NetworkLoadBalancer.Builder
isSymmetricHashEnabled(Boolean isSymmetricHashEnabled)
This can only be enabled when NLB is working in transparent mode with source destination header preservation enabled.NetworkLoadBalancer.Builder
lifecycleDetails(String lifecycleDetails)
A message describing the current state in more detail.NetworkLoadBalancer.Builder
lifecycleState(LifecycleState lifecycleState)
The current state of the network load balancer.NetworkLoadBalancer.Builder
listeners(Map<String,Listener> listeners)
Listeners associated with the network load balancer.NetworkLoadBalancer.Builder
networkSecurityGroupIds(List<String> networkSecurityGroupIds)
An array of network security groups OCIDs associated with the network load balancer.NetworkLoadBalancer.Builder
nlbIpVersion(NlbIpVersion nlbIpVersion)
IP version associated with the NLB.NetworkLoadBalancer.Builder
securityAttributes(Map<String,Map<String,Object>> securityAttributes)
ZPR tags for this resource.NetworkLoadBalancer.Builder
subnetId(String subnetId)
The subnet in which the network load balancer is spawned OCIDs.NetworkLoadBalancer.Builder
systemTags(Map<String,Map<String,Object>> systemTags)
Key-value pair representing system tags’ keys and values scoped to a namespace.NetworkLoadBalancer.Builder
timeCreated(Date timeCreated)
The date and time the network load balancer was created, in the format defined by RFC3339.NetworkLoadBalancer.Builder
timeUpdated(Date timeUpdated)
The time the network load balancer was updated.
-
-
-
Method Detail
-
id
public NetworkLoadBalancer.Builder id(String id)
The OCID of the network load balancer.- Parameters:
id
- the value to set- Returns:
- this builder
-
compartmentId
public NetworkLoadBalancer.Builder compartmentId(String compartmentId)
The OCID of the compartment containing the network load balancer.- Parameters:
compartmentId
- the value to set- Returns:
- this builder
-
displayName
public NetworkLoadBalancer.Builder displayName(String displayName)
A user-friendly name, which does not have to be unique, and can be changed.Example: example_load_balancer
- Parameters:
displayName
- the value to set- Returns:
- this builder
-
lifecycleState
public NetworkLoadBalancer.Builder lifecycleState(LifecycleState lifecycleState)
The current state of the network load balancer.- Parameters:
lifecycleState
- the value to set- Returns:
- this builder
-
lifecycleDetails
public NetworkLoadBalancer.Builder lifecycleDetails(String lifecycleDetails)
A message describing the current state in more detail.For example, can be used to provide actionable information for a resource in Failed state.
- Parameters:
lifecycleDetails
- the value to set- Returns:
- this builder
-
nlbIpVersion
public NetworkLoadBalancer.Builder nlbIpVersion(NlbIpVersion nlbIpVersion)
IP version associated with the NLB.- Parameters:
nlbIpVersion
- the value to set- Returns:
- this builder
-
timeCreated
public NetworkLoadBalancer.Builder timeCreated(Date timeCreated)
The date and time the network load balancer was created, in the format defined by RFC3339.Example: 2020-05-01T21:10:29.600Z
- Parameters:
timeCreated
- the value to set- Returns:
- this builder
-
timeUpdated
public NetworkLoadBalancer.Builder timeUpdated(Date timeUpdated)
The time the network load balancer was updated.An RFC3339 formatted date-time string.
Example: 2020-05-01T22:10:29.600Z
- Parameters:
timeUpdated
- the value to set- Returns:
- this builder
-
ipAddresses
public NetworkLoadBalancer.Builder ipAddresses(List<IpAddress> ipAddresses)
An array of IP addresses.- Parameters:
ipAddresses
- the value to set- Returns:
- this builder
-
isPrivate
public NetworkLoadBalancer.Builder isPrivate(Boolean isPrivate)
Whether the network load balancer has a virtual cloud network-local (private) IP address.If "true", then the service assigns a private IP address to the network load balancer.
If "false", then the service assigns a public IP address to the network load balancer.
A public network load balancer is accessible from the internet, depending the [security list rules](https://docs.oracle.com/iaas/Content/network/Concepts/securitylists.htm) for your virtual cloudn network. For more information about public and private network load balancers, see [Network Load Balancer Types](https://docs.oracle.com/iaas/Content/NetworkLoadBalancer/introduction.htm#NetworkLoadBalancerTypes). This value is true by default.
Example: true
- Parameters:
isPrivate
- the value to set- Returns:
- this builder
-
isPreserveSourceDestination
public NetworkLoadBalancer.Builder isPreserveSourceDestination(Boolean isPreserveSourceDestination)
When enabled, the skipSourceDestinationCheck parameter is automatically enabled on the load balancer VNIC.Packets are sent to the backend set without any changes to the source and destination IP.
- Parameters:
isPreserveSourceDestination
- the value to set- Returns:
- this builder
-
isSymmetricHashEnabled
public NetworkLoadBalancer.Builder isSymmetricHashEnabled(Boolean isSymmetricHashEnabled)
This can only be enabled when NLB is working in transparent mode with source destination header preservation enabled.This removes the additional dependency from NLB backends(like Firewalls) to perform SNAT.
- Parameters:
isSymmetricHashEnabled
- the value to set- Returns:
- this builder
-
subnetId
public NetworkLoadBalancer.Builder subnetId(String subnetId)
The subnet in which the network load balancer is spawned OCIDs.- Parameters:
subnetId
- the value to set- Returns:
- this builder
-
networkSecurityGroupIds
public NetworkLoadBalancer.Builder networkSecurityGroupIds(List<String> networkSecurityGroupIds)
An array of network security groups OCIDs associated with the network load balancer.During the creation of the network load balancer, the service adds the new load balancer to the specified network security groups.
The benefits of associating the network load balancer with network security groups include:
Network security groups define network security rules to govern ingress and egress traffic for the network load balancer.
The network security rules of other resources can reference the network security groups associated with the network load balancer to ensure access.
Example: ["ocid1.nsg.oc1.phx.unique_ID"]
- Parameters:
networkSecurityGroupIds
- the value to set- Returns:
- this builder
-
listeners
public NetworkLoadBalancer.Builder listeners(Map<String,Listener> listeners)
Listeners associated with the network load balancer.- Parameters:
listeners
- the value to set- Returns:
- this builder
-
backendSets
public NetworkLoadBalancer.Builder backendSets(Map<String,BackendSet> backendSets)
Backend sets associated with the network load balancer.- Parameters:
backendSets
- the value to set- Returns:
- this builder
-
freeformTags
public NetworkLoadBalancer.Builder freeformTags(Map<String,String> freeformTags)
Free-form tags for this resource.Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
Example: {"Department": "Finance"}
- Parameters:
freeformTags
- the value to set- Returns:
- this builder
-
securityAttributes
public NetworkLoadBalancer.Builder securityAttributes(Map<String,Map<String,Object>> securityAttributes)
ZPR tags for this resource.Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
Example: { "oracle-zpr": { "td": { "value": "42", "mode": "audit" } } }
- Parameters:
securityAttributes
- the value to set- Returns:
- this builder
-
definedTags
public NetworkLoadBalancer.Builder definedTags(Map<String,Map<String,Object>> definedTags)
Defined tags for this resource.Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: {"Operations": {"CostCenter": "42"}}
- Parameters:
definedTags
- the value to set- Returns:
- this builder
-
systemTags
public NetworkLoadBalancer.Builder systemTags(Map<String,Map<String,Object>> systemTags)
Key-value pair representing system tags’ keys and values scoped to a namespace.Example: {“bar-key”: “value”}
- Parameters:
systemTags
- the value to set- Returns:
- this builder
-
build
public NetworkLoadBalancer build()
-
copy
public NetworkLoadBalancer.Builder copy(NetworkLoadBalancer model)
-
-