Class Instance.Builder
- java.lang.Object
-
- com.oracle.bmc.core.model.Instance.Builder
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Instance.Builder
agentConfig(InstanceAgentConfig agentConfig)
Instance.Builder
availabilityConfig(InstanceAvailabilityConfig availabilityConfig)
Instance.Builder
availabilityDomain(String availabilityDomain)
The availability domain the instance is running in.Instance
build()
Instance.Builder
capacityReservationId(String capacityReservationId)
The OCID of the compute capacity reservation this instance is launched under.Instance.Builder
clusterPlacementGroupId(String clusterPlacementGroupId)
The OCID of the cluster placement group of the instance.Instance.Builder
compartmentId(String compartmentId)
The OCID of the compartment that contains the instance.Instance.Builder
computeHostGroupId(String computeHostGroupId)
The OCID for the Customer-unique host groupInstance.Builder
copy(Instance model)
Instance.Builder
dedicatedVmHostId(String dedicatedVmHostId)
The OCID of the dedicated virtual machine host that the instance is placed on.Instance.Builder
definedTags(Map<String,Map<String,Object>> definedTags)
Defined tags for this resource.Instance.Builder
displayName(String displayName)
A user-friendly name.Instance.Builder
extendedMetadata(Map<String,Object> extendedMetadata)
Additional metadata key/value pairs that you provide.Instance.Builder
faultDomain(String faultDomain)
The name of the fault domain the instance is running in.Instance.Builder
freeformTags(Map<String,String> freeformTags)
Free-form tags for this resource.Instance.Builder
id(String id)
The OCID of the instance.Instance.Builder
imageId(String imageId)
Deprecated.Instance.Builder
instanceConfigurationId(String instanceConfigurationId)
The OCID of the Instance Configuration used to source launch details for this instance.Instance.Builder
instanceOptions(InstanceOptions instanceOptions)
Instance.Builder
ipxeScript(String ipxeScript)
When a bare metal or virtual machine instance boots, the iPXE firmware that runs on the instance is configured to run an iPXE script to continue the boot process.Instance.Builder
isCrossNumaNode(Boolean isCrossNumaNode)
Whether the instance\u2019s OCPUs and memory are distributed across multiple NUMA nodes.Instance.Builder
launchMode(Instance.LaunchMode launchMode)
Specifies the configuration mode for launching virtual machine (VM) instances.Instance.Builder
launchOptions(LaunchOptions launchOptions)
Instance.Builder
licensingConfigs(List<LicensingConfig> licensingConfigs)
List of licensing configurations associated with the instance.Instance.Builder
lifecycleState(Instance.LifecycleState lifecycleState)
The current state of the instance.Instance.Builder
metadata(Map<String,String> metadata)
Custom metadata that you provide.Instance.Builder
placementConstraintDetails(PlacementConstraintDetails placementConstraintDetails)
Instance.Builder
platformConfig(PlatformConfig platformConfig)
Instance.Builder
preemptibleInstanceConfig(PreemptibleInstanceConfigDetails preemptibleInstanceConfig)
Instance.Builder
region(String region)
The region that contains the availability domain the instance is running in.Instance.Builder
securityAttributes(Map<String,Map<String,Object>> securityAttributes)
Security attributes are labels for a resource that can be referenced in a Zero Trust Packet Routing (ZPR) policy to control access to ZPR-supported resources.Instance.Builder
securityAttributesState(Instance.SecurityAttributesState securityAttributesState)
The lifecycle state of the securityAttributesInstance.Builder
shape(String shape)
The shape of the instance.Instance.Builder
shapeConfig(InstanceShapeConfig shapeConfig)
Instance.Builder
sourceDetails(InstanceSourceDetails sourceDetails)
Instance.Builder
systemTags(Map<String,Map<String,Object>> systemTags)
System tags for this resource.Instance.Builder
timeCreated(Date timeCreated)
The date and time the instance was created, in the format defined by RFC3339.Instance.Builder
timeMaintenanceRebootDue(Date timeMaintenanceRebootDue)
The date and time the instance is expected to be stopped / started, in the format defined by RFC3339.
-
-
-
Method Detail
-
availabilityDomain
public Instance.Builder availabilityDomain(String availabilityDomain)
The availability domain the instance is running in.Example: Uocm:PHX-AD-1
- Parameters:
availabilityDomain
- the value to set- Returns:
- this builder
-
capacityReservationId
public Instance.Builder capacityReservationId(String capacityReservationId)
The OCID of the compute capacity reservation this instance is launched under.When this field contains an empty string or is null, the instance is not currently in a capacity reservation. For more information, see Capacity Reservations.
- Parameters:
capacityReservationId
- the value to set- Returns:
- this builder
-
compartmentId
public Instance.Builder compartmentId(String compartmentId)
The OCID of the compartment that contains the instance.- Parameters:
compartmentId
- the value to set- Returns:
- this builder
-
placementConstraintDetails
public Instance.Builder placementConstraintDetails(PlacementConstraintDetails placementConstraintDetails)
-
clusterPlacementGroupId
public Instance.Builder clusterPlacementGroupId(String clusterPlacementGroupId)
The OCID of the cluster placement group of the instance.- Parameters:
clusterPlacementGroupId
- the value to set- Returns:
- this builder
-
dedicatedVmHostId
public Instance.Builder dedicatedVmHostId(String dedicatedVmHostId)
The OCID of the dedicated virtual machine host that the instance is placed on.- Parameters:
dedicatedVmHostId
- the value to set- Returns:
- this builder
-
definedTags
public Instance.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
-
securityAttributes
public Instance.Builder securityAttributes(Map<String,Map<String,Object>> securityAttributes)
Security attributes are labels for a resource that can be referenced in a Zero Trust Packet Routing (ZPR) policy to control access to ZPR-supported resources.Example: {"Oracle-DataSecurity-ZPR": {"MaxEgressCount": {"value":"42","mode":"audit"}}}
- Parameters:
securityAttributes
- the value to set- Returns:
- this builder
-
securityAttributesState
public Instance.Builder securityAttributesState(Instance.SecurityAttributesState securityAttributesState)
The lifecycle state of the securityAttributes- Parameters:
securityAttributesState
- the value to set- Returns:
- this builder
-
displayName
public Instance.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
-
extendedMetadata
public Instance.Builder extendedMetadata(Map<String,Object> extendedMetadata)
Additional metadata key/value pairs that you provide.They serve the same purpose and functionality as fields in the metadata object.
They are distinguished from metadata fields in that these can be nested JSON objects (whereas metadata fields are string/string maps only).
- Parameters:
extendedMetadata
- the value to set- Returns:
- this builder
-
faultDomain
public Instance.Builder faultDomain(String faultDomain)
The name of the fault domain the instance is running in.A fault domain is a grouping of hardware and infrastructure within an availability domain. Each availability domain contains three fault domains. Fault domains let you distribute your instances so that they are not on the same physical hardware within a single availability domain. A hardware failure or Compute hardware maintenance that affects one fault domain does not affect instances in other fault domains.
If you do not specify the fault domain, the system selects one for you.
Example: FAULT-DOMAIN-1
- Parameters:
faultDomain
- the value to set- Returns:
- this builder
-
freeformTags
public Instance.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
-
id
public Instance.Builder id(String id)
The OCID of the instance.- Parameters:
id
- the value to set- Returns:
- this builder
-
imageId
public Instance.Builder imageId(String imageId)
Deprecated.Use sourceDetails instead.
- Parameters:
imageId
- the value to set- Returns:
- this builder
-
ipxeScript
public Instance.Builder ipxeScript(String ipxeScript)
When a bare metal or virtual machine instance boots, the iPXE firmware that runs on the instance is configured to run an iPXE script to continue the boot process.If you want more control over the boot process, you can provide your own custom iPXE script that will run when the instance boots. Be aware that the same iPXE script will run every time an instance boots, not only after the initial LaunchInstance call.
The default iPXE script connects to the instance's local boot volume over iSCSI and performs a network boot. If you use a custom iPXE script and want to network-boot from the instance's local boot volume over iSCSI the same way as the default iPXE script, use the following iSCSI IP address: 169.254.0.2, and boot volume IQN: iqn.2015-02.oracle.boot.
If your instance boot volume attachment type is paravirtualized, the boot volume is attached to the instance through virtio-scsi and no iPXE script is used. If your instance boot volume attachment type is paravirtualized and you use custom iPXE to network boot into your instance, the primary boot volume is attached as a data volume through virtio-scsi drive.
For more information about the Bring Your Own Image feature of Oracle Cloud Infrastructure, see [Bring Your Own Image](https://docs.oracle.com/iaas/Content/Compute/References/bringyourownimage.htm).
For more information about iPXE, see http://ipxe.org.
- Parameters:
ipxeScript
- the value to set- Returns:
- this builder
-
launchMode
public Instance.Builder launchMode(Instance.LaunchMode launchMode)
Specifies the configuration mode for launching virtual machine (VM) instances.The configuration modes are: * NATIVE - VM instances launch with iSCSI boot and VFIO devices. The default value for platform images. * EMULATED - VM instances launch with emulated devices, such as the E1000 network driver and emulated SCSI disk controller. * PARAVIRTUALIZED - VM instances launch with paravirtualized devices using VirtIO drivers. * CUSTOM - VM instances launch with custom configuration settings specified in the LaunchOptions parameter.
- Parameters:
launchMode
- the value to set- Returns:
- this builder
-
launchOptions
public Instance.Builder launchOptions(LaunchOptions launchOptions)
-
instanceOptions
public Instance.Builder instanceOptions(InstanceOptions instanceOptions)
-
availabilityConfig
public Instance.Builder availabilityConfig(InstanceAvailabilityConfig availabilityConfig)
-
preemptibleInstanceConfig
public Instance.Builder preemptibleInstanceConfig(PreemptibleInstanceConfigDetails preemptibleInstanceConfig)
-
lifecycleState
public Instance.Builder lifecycleState(Instance.LifecycleState lifecycleState)
The current state of the instance.- Parameters:
lifecycleState
- the value to set- Returns:
- this builder
-
metadata
public Instance.Builder metadata(Map<String,String> metadata)
Custom metadata that you provide.- Parameters:
metadata
- the value to set- Returns:
- this builder
-
region
public Instance.Builder region(String region)
The region that contains the availability domain the instance is running in.For the us-phoenix-1 and us-ashburn-1 regions, phx and iad are returned, respectively. For all other regions, the full region name is returned.
Examples: phx, eu-frankfurt-1
- Parameters:
region
- the value to set- Returns:
- this builder
-
shape
public Instance.Builder shape(String shape)
The shape of the instance.The shape determines the number of CPUs and the amount of memory allocated to the instance. You can enumerate all available shapes by calling
listShapes
.- Parameters:
shape
- the value to set- Returns:
- this builder
-
shapeConfig
public Instance.Builder shapeConfig(InstanceShapeConfig shapeConfig)
-
isCrossNumaNode
public Instance.Builder isCrossNumaNode(Boolean isCrossNumaNode)
Whether the instance\u2019s OCPUs and memory are distributed across multiple NUMA nodes.- Parameters:
isCrossNumaNode
- the value to set- Returns:
- this builder
-
sourceDetails
public Instance.Builder sourceDetails(InstanceSourceDetails sourceDetails)
-
systemTags
public Instance.Builder systemTags(Map<String,Map<String,Object>> systemTags)
System tags for this resource.Each key is predefined and scoped to a namespace. Example: {“foo-namespace”: {“bar-key”: “value”}}
- Parameters:
systemTags
- the value to set- Returns:
- this builder
-
timeCreated
public Instance.Builder timeCreated(Date timeCreated)
The date and time the instance was created, in the format defined by RFC3339.Example: 2016-08-25T21:10:29.600Z
- Parameters:
timeCreated
- the value to set- Returns:
- this builder
-
agentConfig
public Instance.Builder agentConfig(InstanceAgentConfig agentConfig)
-
timeMaintenanceRebootDue
public Instance.Builder timeMaintenanceRebootDue(Date timeMaintenanceRebootDue)
The date and time the instance is expected to be stopped / started, in the format defined by RFC3339.After that time if instance hasn’t been rebooted, Oracle will reboot the instance within 24 hours of the due time. Regardless of how the instance was stopped, the flag will be reset to empty as soon as instance reaches Stopped state. Example: 2018-05-25T21:10:29.600Z
- Parameters:
timeMaintenanceRebootDue
- the value to set- Returns:
- this builder
-
platformConfig
public Instance.Builder platformConfig(PlatformConfig platformConfig)
-
instanceConfigurationId
public Instance.Builder instanceConfigurationId(String instanceConfigurationId)
The OCID of the Instance Configuration used to source launch details for this instance.Any other fields supplied in the instance launch request override the details stored in the Instance Configuration for this instance launch.
- Parameters:
instanceConfigurationId
- the value to set- Returns:
- this builder
-
licensingConfigs
public Instance.Builder licensingConfigs(List<LicensingConfig> licensingConfigs)
List of licensing configurations associated with the instance.- Parameters:
licensingConfigs
- the value to set- Returns:
- this builder
-
computeHostGroupId
public Instance.Builder computeHostGroupId(String computeHostGroupId)
The OCID for the Customer-unique host group- Parameters:
computeHostGroupId
- the value to set- Returns:
- this builder
-
build
public Instance build()
-
copy
public Instance.Builder copy(Instance model)
-
-