Class CreateVnicDetails.Builder
- java.lang.Object
-
- com.oracle.bmc.vnmonitoring.model.CreateVnicDetails.Builder
-
- Enclosing class:
- CreateVnicDetails
public static class CreateVnicDetails.Builder extends Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CreateVnicDetails.Builder
assignPrivateDnsRecord(Boolean assignPrivateDnsRecord)
Whether the VNIC should be assigned a DNS record.CreateVnicDetails.Builder
assignPublicIp(Boolean assignPublicIp)
Whether the VNIC should be assigned a public IP address.CreateVnicDetails
build()
CreateVnicDetails.Builder
copy(CreateVnicDetails model)
CreateVnicDetails.Builder
definedTags(Map<String,Map<String,Object>> definedTags)
Defined tags for this resource.CreateVnicDetails.Builder
displayName(String displayName)
A user-friendly name.CreateVnicDetails.Builder
freeformTags(Map<String,String> freeformTags)
Simple key-value pair that is applied without any predefined name, type or scope.CreateVnicDetails.Builder
hostnameLabel(String hostnameLabel)
The hostname for the VNIC’s primary private IP.CreateVnicDetails.Builder
nsgIds(List<String> nsgIds)
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to.CreateVnicDetails.Builder
privateIp(String privateIp)
A private IP address of your choice to assign to the VNIC.CreateVnicDetails.Builder
skipSourceDestCheck(Boolean skipSourceDestCheck)
Whether the source/destination check is disabled on the VNIC.CreateVnicDetails.Builder
subnetId(String subnetId)
The OCID of the subnet to create the VNIC in.CreateVnicDetails.Builder
vlanId(String vlanId)
Provide this attribute only if you are an Oracle Cloud VMware Solution customer and creating a secondary VNIC in a VLAN.
-
-
-
Method Detail
-
assignPublicIp
public CreateVnicDetails.Builder assignPublicIp(Boolean assignPublicIp)
Whether the VNIC should be assigned a public IP address.Defaults to whether the subnet is public or private. If not set and the VNIC is being created in a private subnet (that is, where prohibitPublicIpOnVnic = true in the
Subnet
), then no public IP address is assigned. If not set and the subnet is public (prohibitPublicIpOnVnic = false), then a public IP address is assigned. If set to true and prohibitPublicIpOnVnic = true, an error is returned.*Note:** This public IP address is associated with the primary private IP on the VNIC. For more information, see [IP Addresses](https://docs.oracle.com/iaas/Content/Network/Tasks/managingIPaddresses.htm).
*Note:** There's a limit to the number of
PublicIp
a VNIC or instance can have. If you try to create a secondary VNIC with an assigned public IP for an instance that has already reached its public IP limit, an error is returned. For information about the public IP limits, see [Public IP Addresses](https://docs.oracle.com/iaas/Content/Network/Tasks/managingpublicIPs.htm).Example: false
If you specify a vlanId, then assignPublicIp must be set to false. See
Vlan
.- Parameters:
assignPublicIp
- the value to set- Returns:
- this builder
-
assignPrivateDnsRecord
public CreateVnicDetails.Builder assignPrivateDnsRecord(Boolean assignPrivateDnsRecord)
Whether the VNIC should be assigned a DNS record.If set to false, there will be no DNS record registration for the VNIC. If set to true, the DNS record will be registered. The default value is true.
If you specify a hostnameLabel, then assignPrivateDnsRecord must be set to true.
- Parameters:
assignPrivateDnsRecord
- the value to set- Returns:
- this builder
-
definedTags
public CreateVnicDetails.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
-
displayName
public CreateVnicDetails.Builder displayName(String displayName)
A user-friendly name.Does not have to be unique, and it’s changeable. Avoid entering confidential information.
- Parameters:
displayName
- the value to set- Returns:
- this builder
-
freeformTags
public CreateVnicDetails.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
-
hostnameLabel
public CreateVnicDetails.Builder hostnameLabel(String hostnameLabel)
The hostname for the VNIC’s primary private IP.Used for DNS. The value is the hostname portion of the primary private IP’s fully qualified domain name (FQDN) (for example, bminstance1 in FQDN bminstance1.subnet123.vcn1.oraclevcn.com). Must be unique across all VNICs in the subnet and comply with RFC 952 and RFC 1123. The value appears in the
Vnic
object and also thePrivateIp
object returned bylistPrivateIps
andgetPrivateIp
.For more information, see [DNS in Your Virtual Cloud Network](https://docs.oracle.com/iaas/Content/Network/Concepts/dns.htm).
When launching an instance, use this hostnameLabel instead of the deprecated hostnameLabel in
launchInstanceDetails
. If you provide both, the values must match.Example: bminstance1
If you specify a vlanId, the hostnameLabel cannot be specified. VNICs on a VLAN can not be assigned a hostname. See
Vlan
.- Parameters:
hostnameLabel
- the value to set- Returns:
- this builder
-
nsgIds
public CreateVnicDetails.Builder nsgIds(List<String> nsgIds)
A list of the OCIDs of the network security groups (NSGs) to add the VNIC to.For more information about NSGs, see
NetworkSecurityGroup
.If a vlanId is specified, the nsgIds cannot be specified. The vlanId indicates that the VNIC will belong to a VLAN instead of a subnet. With VLANs, all VNICs in the VLAN belong to the NSGs that are associated with the VLAN. See
Vlan
.- Parameters:
nsgIds
- the value to set- Returns:
- this builder
-
privateIp
public CreateVnicDetails.Builder privateIp(String privateIp)
A private IP address of your choice to assign to the VNIC.Must be an available IP address within the subnet’s CIDR. If you don’t specify a value, Oracle automatically assigns a private IP address from the subnet. This is the VNIC’s primary private IP address. The value appears in the
Vnic
object and also thePrivateIp
object returned bylistPrivateIps
andgetPrivateIp
.If you specify a vlanId, the privateIp cannot be specified. See
Vlan
.Example: 10.0.3.3
- Parameters:
privateIp
- the value to set- Returns:
- this builder
-
skipSourceDestCheck
public CreateVnicDetails.Builder skipSourceDestCheck(Boolean skipSourceDestCheck)
Whether the source/destination check is disabled on the VNIC.Defaults to false, which means the check is performed. For information about why you would skip the source/destination check, see Using a Private IP as a Route Target.
If you specify a vlanId, the skipSourceDestCheck cannot be specified because the source/destination check is always disabled for VNICs in a VLAN. See
Vlan
.Example: true
- Parameters:
skipSourceDestCheck
- the value to set- Returns:
- this builder
-
subnetId
public CreateVnicDetails.Builder subnetId(String subnetId)
The OCID of the subnet to create the VNIC in.When launching an instance, use this subnetId instead of the deprecated subnetId in
launchInstanceDetails
. At least one of them is required; if you provide both, the values must match.If you are an Oracle Cloud VMware Solution customer and creating a secondary VNIC in a VLAN instead of a subnet, provide a vlanId instead of a subnetId. If you provide both a vlanId and subnetId, the request fails.
- Parameters:
subnetId
- the value to set- Returns:
- this builder
-
vlanId
public CreateVnicDetails.Builder vlanId(String vlanId)
Provide this attribute only if you are an Oracle Cloud VMware Solution customer and creating a secondary VNIC in a VLAN.The value is the OCID of the VLAN. See
Vlan
.Provide a vlanId instead of a subnetId. If you provide both a vlanId and subnetId, the request fails.
- Parameters:
vlanId
- the value to set- Returns:
- this builder
-
build
public CreateVnicDetails build()
-
copy
public CreateVnicDetails.Builder copy(CreateVnicDetails model)
-
-