Class ComputeReservationConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_reservation.ComputeReservationConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeReservationConfig>
- Enclosing interface:
- ComputeReservationConfig
@Stability(Stable) public static final class ComputeReservationConfig.Builder extends Object implements software.amazon.jsii.Builder<ComputeReservationConfig>
A builder forComputeReservationConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
name
@Stability(Stable) public ComputeReservationConfig.Builder name(String name)
Sets the value ofComputeReservationConfig.getName()- Parameters:
name- Name of the resource. This parameter is required. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z](%5B-a-z0-9%5D*%5Ba-z0-9%5D)?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#name ComputeReservation#name}- Returns:
this
-
specificReservation
@Stability(Stable) public ComputeReservationConfig.Builder specificReservation(ComputeReservationSpecificReservation specificReservation)
Sets the value ofComputeReservationConfig.getSpecificReservation()- Parameters:
specificReservation- specific_reservation block. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#specific_reservation ComputeReservation#specific_reservation}- Returns:
this
-
zone
@Stability(Stable) public ComputeReservationConfig.Builder zone(String zone)
Sets the value ofComputeReservationConfig.getZone()- Parameters:
zone- The zone where the reservation is made. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#zone ComputeReservation#zone}- Returns:
this
-
description
@Stability(Stable) public ComputeReservationConfig.Builder description(String description)
Sets the value ofComputeReservationConfig.getDescription()- Parameters:
description- An optional description of this resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#description ComputeReservation#description}- Returns:
this
-
id
@Stability(Stable) public ComputeReservationConfig.Builder id(String id)
Sets the value ofComputeReservationConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#id ComputeReservation#id}. Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.- Returns:
this
-
project
@Stability(Stable) public ComputeReservationConfig.Builder project(String project)
Sets the value ofComputeReservationConfig.getProject()- Parameters:
project- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#project ComputeReservation#project}.- Returns:
this
-
shareSettings
@Stability(Stable) public ComputeReservationConfig.Builder shareSettings(ComputeReservationShareSettings shareSettings)
Sets the value ofComputeReservationConfig.getShareSettings()- Parameters:
shareSettings- share_settings block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#share_settings ComputeReservation#share_settings}- Returns:
this
-
specificReservationRequired
@Stability(Stable) public ComputeReservationConfig.Builder specificReservationRequired(Boolean specificReservationRequired)
Sets the value ofComputeReservationConfig.getSpecificReservationRequired()- Parameters:
specificReservationRequired- When set to true, only VMs that target this reservation by name can consume this reservation. Otherwise, it can be consumed by VMs with affinity for any reservation. Defaults to false. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#specific_reservation_required ComputeReservation#specific_reservation_required}- Returns:
this
-
specificReservationRequired
@Stability(Stable) public ComputeReservationConfig.Builder specificReservationRequired(com.hashicorp.cdktf.IResolvable specificReservationRequired)
Sets the value ofComputeReservationConfig.getSpecificReservationRequired()- Parameters:
specificReservationRequired- When set to true, only VMs that target this reservation by name can consume this reservation. Otherwise, it can be consumed by VMs with affinity for any reservation. Defaults to false. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#specific_reservation_required ComputeReservation#specific_reservation_required}- Returns:
this
-
timeouts
@Stability(Stable) public ComputeReservationConfig.Builder timeouts(ComputeReservationTimeouts timeouts)
Sets the value ofComputeReservationConfig.getTimeouts()- Parameters:
timeouts- timeouts block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_reservation#timeouts ComputeReservation#timeouts}- Returns:
this
-
connection
@Stability(Experimental) public ComputeReservationConfig.Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection)
Sets the value ofTerraformMetaArguments.getConnection()- Parameters:
connection- the value to be set.- Returns:
this
-
connection
@Stability(Experimental) public ComputeReservationConfig.Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
Sets the value ofTerraformMetaArguments.getConnection()- Parameters:
connection- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public ComputeReservationConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public ComputeReservationConfig.Builder count(com.hashicorp.cdktf.TerraformCount count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
dependsOn
@Stability(Experimental) public ComputeReservationConfig.Builder dependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
Sets the value ofTerraformMetaArguments.getDependsOn()- Parameters:
dependsOn- the value to be set.- Returns:
this
-
forEach
@Stability(Experimental) public ComputeReservationConfig.Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach)
Sets the value ofTerraformMetaArguments.getForEach()- Parameters:
forEach- the value to be set.- Returns:
this
-
lifecycle
@Stability(Experimental) public ComputeReservationConfig.Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
Sets the value ofTerraformMetaArguments.getLifecycle()- Parameters:
lifecycle- the value to be set.- Returns:
this
-
provider
@Stability(Experimental) public ComputeReservationConfig.Builder provider(com.hashicorp.cdktf.TerraformProvider provider)
Sets the value ofTerraformMetaArguments.getProvider()- Parameters:
provider- the value to be set.- Returns:
this
-
provisioners
@Stability(Experimental) public ComputeReservationConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public ComputeReservationConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeReservationConfig>- Returns:
- a new instance of
ComputeReservationConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-