Class CreateNetworkLoadBalancerDetails.Builder
- java.lang.Object
-
- com.oracle.bmc.networkloadbalancer.model.CreateNetworkLoadBalancerDetails.Builder
-
- Enclosing class:
- CreateNetworkLoadBalancerDetails
public static class CreateNetworkLoadBalancerDetails.Builder extends Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CreateNetworkLoadBalancerDetails.Builder
assignedIpv6(String assignedIpv6)
IPv6 address to be assigned to the network load balancer being created.CreateNetworkLoadBalancerDetails.Builder
assignedPrivateIpv4(String assignedPrivateIpv4)
Private IP address to be assigned to the network load balancer being created.CreateNetworkLoadBalancerDetails.Builder
backendSets(Map<String,BackendSetDetails> backendSets)
Backend sets associated with the network load balancer.CreateNetworkLoadBalancerDetails
build()
CreateNetworkLoadBalancerDetails.Builder
compartmentId(String compartmentId)
The OCID of the compartment containing the network load balancer.CreateNetworkLoadBalancerDetails.Builder
copy(CreateNetworkLoadBalancerDetails model)
CreateNetworkLoadBalancerDetails.Builder
definedTags(Map<String,Map<String,Object>> definedTags)
Defined tags for this resource.CreateNetworkLoadBalancerDetails.Builder
displayName(String displayName)
Network load balancer identifier, which can be renamed.CreateNetworkLoadBalancerDetails.Builder
freeformTags(Map<String,String> freeformTags)
Simple key-value pair that is applied without any predefined name, type, or scope.CreateNetworkLoadBalancerDetails.Builder
isPreserveSourceDestination(Boolean isPreserveSourceDestination)
This parameter can be enabled only if backends are compute OCIDs.CreateNetworkLoadBalancerDetails.Builder
isPrivate(Boolean isPrivate)
Whether the network load balancer has a virtual cloud network-local (private) IP address.CreateNetworkLoadBalancerDetails.Builder
isSymmetricHashEnabled(Boolean isSymmetricHashEnabled)
This can only be enabled when NLB is working in transparent mode with source destination header preservation enabled.CreateNetworkLoadBalancerDetails.Builder
listeners(Map<String,ListenerDetails> listeners)
Listeners associated with the network load balancer.CreateNetworkLoadBalancerDetails.Builder
networkSecurityGroupIds(List<String> networkSecurityGroupIds)
An array of network security groups OCIDs associated with the network load balancer.CreateNetworkLoadBalancerDetails.Builder
nlbIpVersion(NlbIpVersion nlbIpVersion)
IP version associated with the NLB.CreateNetworkLoadBalancerDetails.Builder
reservedIps(List<ReservedIP> reservedIps)
An array of reserved Ips.CreateNetworkLoadBalancerDetails.Builder
securityAttributes(Map<String,Map<String,Object>> securityAttributes)
ZPR tags for this resource.CreateNetworkLoadBalancerDetails.Builder
subnetId(String subnetId)
The subnet in which the network load balancer is spawned OCIDs.CreateNetworkLoadBalancerDetails.Builder
subnetIpv6Cidr(String subnetIpv6Cidr)
IPv6 subnet prefix selection.
-
-
-
Method Detail
-
compartmentId
public CreateNetworkLoadBalancerDetails.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 CreateNetworkLoadBalancerDetails.Builder displayName(String displayName)
Network load balancer identifier, which can be renamed.- Parameters:
displayName
- the value to set- Returns:
- this builder
-
isPreserveSourceDestination
public CreateNetworkLoadBalancerDetails.Builder isPreserveSourceDestination(Boolean isPreserveSourceDestination)
This parameter can be enabled only if backends are compute OCIDs.When enabled, the skipSourceDestinationCheck parameter is automatically enabled on the load balancer VNIC, and packets are sent to the backend with the entire IP header intact.
- Parameters:
isPreserveSourceDestination
- the value to set- Returns:
- this builder
-
isSymmetricHashEnabled
public CreateNetworkLoadBalancerDetails.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
-
reservedIps
public CreateNetworkLoadBalancerDetails.Builder reservedIps(List<ReservedIP> reservedIps)
An array of reserved Ips.- Parameters:
reservedIps
- the value to set- Returns:
- this builder
-
isPrivate
public CreateNetworkLoadBalancerDetails.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 on the [security list rules](https://docs.oracle.com/iaas/Content/network/Concepts/securitylists.htm) for your virtual cloud 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
-
subnetId
public CreateNetworkLoadBalancerDetails.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 CreateNetworkLoadBalancerDetails.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
-
nlbIpVersion
public CreateNetworkLoadBalancerDetails.Builder nlbIpVersion(NlbIpVersion nlbIpVersion)
IP version associated with the NLB.- Parameters:
nlbIpVersion
- the value to set- Returns:
- this builder
-
subnetIpv6Cidr
public CreateNetworkLoadBalancerDetails.Builder subnetIpv6Cidr(String subnetIpv6Cidr)
IPv6 subnet prefix selection.If Ipv6 subnet prefix is passed, Nlb Ipv6 Address would be assign within the cidr block. NLB has to be dual or single stack ipv6 to support this.
- Parameters:
subnetIpv6Cidr
- the value to set- Returns:
- this builder
-
assignedPrivateIpv4
public CreateNetworkLoadBalancerDetails.Builder assignedPrivateIpv4(String assignedPrivateIpv4)
Private IP address to be assigned to the network load balancer being created.This IP address has to be in the CIDR range of the subnet where network load balancer is being created Example: “10.0.0.1”
- Parameters:
assignedPrivateIpv4
- the value to set- Returns:
- this builder
-
assignedIpv6
public CreateNetworkLoadBalancerDetails.Builder assignedIpv6(String assignedIpv6)
IPv6 address to be assigned to the network load balancer being created.This IP address has to be part of one of the prefixes supported by the subnet. Example: “2607:9b80:9a0a:9a7e:abcd:ef01:2345:6789”
- Parameters:
assignedIpv6
- the value to set- Returns:
- this builder
-
listeners
public CreateNetworkLoadBalancerDetails.Builder listeners(Map<String,ListenerDetails> listeners)
Listeners associated with the network load balancer.- Parameters:
listeners
- the value to set- Returns:
- this builder
-
backendSets
public CreateNetworkLoadBalancerDetails.Builder backendSets(Map<String,BackendSetDetails> backendSets)
Backend sets associated with the network load balancer.- Parameters:
backendSets
- the value to set- Returns:
- this builder
-
freeformTags
public CreateNetworkLoadBalancerDetails.Builder freeformTags(Map<String,String> freeformTags)
Simple key-value pair that is applied without any predefined name, type, or scope.Exists for cross-compatibility only. Example: {“bar-key”: “value”}
- Parameters:
freeformTags
- the value to set- Returns:
- this builder
-
definedTags
public CreateNetworkLoadBalancerDetails.Builder definedTags(Map<String,Map<String,Object>> definedTags)
Defined tags for this resource.Each key is predefined and scoped to a namespace. Example: {“foo-namespace”: {“bar-key”: “value”}}
- Parameters:
definedTags
- the value to set- Returns:
- this builder
-
securityAttributes
public CreateNetworkLoadBalancerDetails.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
-
build
public CreateNetworkLoadBalancerDetails build()
-
copy
public CreateNetworkLoadBalancerDetails.Builder copy(CreateNetworkLoadBalancerDetails model)
-
-