@Generated(value="OracleSDKGenerator", comments="API Version: 20170115") public final class CreateLoadBalancerDetails extends ExplicitlySetBmcModel
The configuration details for creating a load balancer.
Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API.
Note: Objects should always be created or deserialized using the CreateLoadBalancerDetails.Builder
. This model distinguishes fields
that are null
because they are unset from fields that are explicitly set to null
. This is done in
the setter methods of the CreateLoadBalancerDetails.Builder
, which maintain a set of all explicitly set fields called
ExplicitlySetBmcModel.__explicitlySet__
. The hashCode()
and equals(Object)
methods are implemented to take
ExplicitlySetBmcModel.__explicitlySet__
into account. The constructor, on the other hand, does not set ExplicitlySetBmcModel.__explicitlySet__
(since the constructor cannot distinguish explicit null
from unset null
).
Modifier and Type | Class and Description |
---|---|
static class |
CreateLoadBalancerDetails.Builder |
static class |
CreateLoadBalancerDetails.IpMode
Whether the load balancer has an IPv4 or IPv6 IP address.
|
Constructor and Description |
---|
CreateLoadBalancerDetails(String compartmentId,
String displayName,
String shapeName,
ShapeDetails shapeDetails,
Boolean isPrivate,
CreateLoadBalancerDetails.IpMode ipMode,
List<ReservedIP> reservedIps,
Map<String,ListenerDetails> listeners,
Map<String,HostnameDetails> hostnames,
Map<String,BackendSetDetails> backendSets,
List<String> networkSecurityGroupIds,
List<String> subnetIds,
Map<String,CertificateDetails> certificates,
Map<String,SSLCipherSuiteDetails> sslCipherSuites,
Map<String,PathRouteSetDetails> pathRouteSets,
Map<String,String> freeformTags,
Map<String,Map<String,Object>> definedTags,
Map<String,RuleSetDetails> ruleSets)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
static CreateLoadBalancerDetails.Builder |
builder()
Create a new builder.
|
boolean |
equals(Object o) |
Map<String,BackendSetDetails> |
getBackendSets() |
Map<String,CertificateDetails> |
getCertificates() |
String |
getCompartmentId()
The OCID of the compartment in which to create the load balancer.
|
Map<String,Map<String,Object>> |
getDefinedTags()
Defined tags for this resource.
|
String |
getDisplayName()
A user-friendly name.
|
Map<String,String> |
getFreeformTags()
Free-form tags for this resource.
|
Map<String,HostnameDetails> |
getHostnames() |
CreateLoadBalancerDetails.IpMode |
getIpMode()
Whether the load balancer has an IPv4 or IPv6 IP address.
|
Boolean |
getIsPrivate()
Whether the load balancer has a VCN-local (private) IP address.
|
Map<String,ListenerDetails> |
getListeners() |
List<String> |
getNetworkSecurityGroupIds()
An array of NSG OCIDs associated with this load balancer.
|
Map<String,PathRouteSetDetails> |
getPathRouteSets() |
List<ReservedIP> |
getReservedIps()
An array of reserved Ips.
|
Map<String,RuleSetDetails> |
getRuleSets() |
ShapeDetails |
getShapeDetails()
The configuration details to create load balancer using Flexible shape.
|
String |
getShapeName()
A template that determines the total pre-provisioned bandwidth (ingress plus egress).
|
Map<String,SSLCipherSuiteDetails> |
getSslCipherSuites() |
List<String> |
getSubnetIds()
An array of subnet OCIDs.
|
int |
hashCode() |
CreateLoadBalancerDetails.Builder |
toBuilder() |
String |
toString() |
String |
toString(boolean includeByteArrayContents)
Return a string representation of the object.
|
markPropertyAsExplicitlySet, wasPropertyExplicitlySet
@Deprecated @ConstructorProperties(value={"compartmentId","displayName","shapeName","shapeDetails","isPrivate","ipMode","reservedIps","listeners","hostnames","backendSets","networkSecurityGroupIds","subnetIds","certificates","sslCipherSuites","pathRouteSets","freeformTags","definedTags","ruleSets"}) public CreateLoadBalancerDetails(String compartmentId, String displayName, String shapeName, ShapeDetails shapeDetails, Boolean isPrivate, CreateLoadBalancerDetails.IpMode ipMode, List<ReservedIP> reservedIps, Map<String,ListenerDetails> listeners, Map<String,HostnameDetails> hostnames, Map<String,BackendSetDetails> backendSets, List<String> networkSecurityGroupIds, List<String> subnetIds, Map<String,CertificateDetails> certificates, Map<String,SSLCipherSuiteDetails> sslCipherSuites, Map<String,PathRouteSetDetails> pathRouteSets, Map<String,String> freeformTags, Map<String,Map<String,Object>> definedTags, Map<String,RuleSetDetails> ruleSets)
public static CreateLoadBalancerDetails.Builder builder()
Create a new builder.
public CreateLoadBalancerDetails.Builder toBuilder()
public String getCompartmentId()
The OCID of the compartment in which to create the load balancer.
public String getDisplayName()
A user-friendly name. It does not have to be unique, and it is changeable. Avoid entering confidential information.
Example: example_load_balancer
public String getShapeName()
A template that determines the total pre-provisioned bandwidth (ingress plus egress).
To get a list of available shapes, use the listShapes
operation.
Example: flexible
NOTE: Starting May 2023, Fixed shapes - 10Mbps, 100Mbps, 400Mbps, 8000Mbps would be deprecated and only shape
allowed would be Flexible
public ShapeDetails getShapeDetails()
The configuration details to create load balancer using Flexible shape. This is required only if shapeName is Flexible
.
public Boolean getIsPrivate()
Whether the load balancer has a VCN-local (private) IP address.
If "true", the service assigns a private IP address to the load balancer.
If "false", the service assigns a public IP address to the load balancer.
A public load balancer is accessible from the internet, depending on your VCN's [security list rules](https://docs.cloud.oracle.com/Content/Network/Concepts/securitylists.htm). For more information about public and private load balancers, see [How Load Balancing Works](https://docs.cloud.oracle.com/Content/Balance/Concepts/balanceoverview.htm#how-load-balancing-works).
Example: true
public CreateLoadBalancerDetails.IpMode getIpMode()
Whether the load balancer has an IPv4 or IPv6 IP address.
If "IPV4", the service assigns an IPv4 address and the load balancer supports IPv4 traffic.
If "IPV6", the service assigns an IPv6 address and the load balancer supports IPv6 traffic.
Example: "ipMode":"IPV6"
public List<ReservedIP> getReservedIps()
An array of reserved Ips.
public Map<String,ListenerDetails> getListeners()
public Map<String,HostnameDetails> getHostnames()
public Map<String,BackendSetDetails> getBackendSets()
public List<String> getNetworkSecurityGroupIds()
An array of NSG OCIDs associated with this load balancer.
During the load balancer's creation, the service adds the new load balancer to the specified NSGs.
The benefits of using NSGs with the load balancer include:
NSGs define network security rules to govern ingress and egress traffic for the load balancer.
The network security rules of other resources can reference the NSGs associated with the load balancer to ensure access.
Example: ["ocid1.nsg.oc1.phx.unique_ID"]
public Map<String,CertificateDetails> getCertificates()
public Map<String,SSLCipherSuiteDetails> getSslCipherSuites()
public Map<String,PathRouteSetDetails> getPathRouteSets()
public Map<String,String> getFreeformTags()
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"}
public Map<String,Map<String,Object>> getDefinedTags()
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.
Example: {"Operations": {"CostCenter": "42"}}
public Map<String,RuleSetDetails> getRuleSets()
public String toString()
toString
in class ExplicitlySetBmcModel
public String toString(boolean includeByteArrayContents)
Return a string representation of the object.
includeByteArrayContents
- true to include the full contents of byte arrayspublic boolean equals(Object o)
equals
in class ExplicitlySetBmcModel
public int hashCode()
hashCode
in class ExplicitlySetBmcModel
Copyright © 2016–2023. All rights reserved.