Class ProjectConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.project.ProjectConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ProjectConfig>
- Enclosing interface:
- ProjectConfig
@Stability(Stable) public static final class ProjectConfig.Builder extends Object implements software.amazon.jsii.Builder<ProjectConfig>
A builder forProjectConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ProjectConfig.BuilderautoCreateNetwork(com.hashicorp.cdktf.IResolvable autoCreateNetwork)Sets the value ofProjectConfig.getAutoCreateNetwork()ProjectConfig.BuilderautoCreateNetwork(Boolean autoCreateNetwork)Sets the value ofProjectConfig.getAutoCreateNetwork()ProjectConfig.BuilderbillingAccount(String billingAccount)Sets the value ofProjectConfig.getBillingAccount()ProjectConfigbuild()Builds the configured instance.ProjectConfig.Builderconnection(com.hashicorp.cdktf.SSHProvisionerConnection connection)Sets the value ofTerraformMetaArguments.getConnection()ProjectConfig.Builderconnection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)Sets the value ofTerraformMetaArguments.getConnection()ProjectConfig.Buildercount(com.hashicorp.cdktf.TerraformCount count)Sets the value ofTerraformMetaArguments.getCount()ProjectConfig.Buildercount(Number count)Sets the value ofTerraformMetaArguments.getCount()ProjectConfig.BuilderdeletionPolicy(String deletionPolicy)Sets the value ofProjectConfig.getDeletionPolicy()ProjectConfig.BuilderdependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)Sets the value ofTerraformMetaArguments.getDependsOn()ProjectConfig.BuilderfolderId(String folderId)Sets the value ofProjectConfig.getFolderId()ProjectConfig.BuilderforEach(com.hashicorp.cdktf.ITerraformIterator forEach)Sets the value ofTerraformMetaArguments.getForEach()ProjectConfig.Builderid(String id)Sets the value ofProjectConfig.getId()ProjectConfig.Builderlabels(Map<String,String> labels)Sets the value ofProjectConfig.getLabels()ProjectConfig.Builderlifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)Sets the value ofTerraformMetaArguments.getLifecycle()ProjectConfig.Buildername(String name)Sets the value ofProjectConfig.getName()ProjectConfig.BuilderorgId(String orgId)Sets the value ofProjectConfig.getOrgId()ProjectConfig.BuilderprojectId(String projectId)Sets the value ofProjectConfig.getProjectId()ProjectConfig.Builderprovider(com.hashicorp.cdktf.TerraformProvider provider)Sets the value ofTerraformMetaArguments.getProvider()ProjectConfig.Builderprovisioners(List<? extends Object> provisioners)Sets the value ofTerraformMetaArguments.getProvisioners()ProjectConfig.BuilderskipDelete(com.hashicorp.cdktf.IResolvable skipDelete)Sets the value ofProjectConfig.getSkipDelete()ProjectConfig.BuilderskipDelete(Boolean skipDelete)Sets the value ofProjectConfig.getSkipDelete()ProjectConfig.Buildertimeouts(ProjectTimeouts timeouts)Sets the value ofProjectConfig.getTimeouts()
-
-
-
Method Detail
-
name
@Stability(Stable) public ProjectConfig.Builder name(String name)
Sets the value ofProjectConfig.getName()- Parameters:
name- The display name of the project. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#name Project#name}- Returns:
this
-
projectId
@Stability(Stable) public ProjectConfig.Builder projectId(String projectId)
Sets the value ofProjectConfig.getProjectId()- Parameters:
projectId- The project ID. Changing this forces a new project to be created. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#project_id Project#project_id}- Returns:
this
-
autoCreateNetwork
@Stability(Stable) public ProjectConfig.Builder autoCreateNetwork(Boolean autoCreateNetwork)
Sets the value ofProjectConfig.getAutoCreateNetwork()- Parameters:
autoCreateNetwork- Create the 'default' network automatically. Default true. If set to false, the default network will be deleted. Note that, for quota purposes, you will still need to have 1 network slot available to create the project successfully, even if you set auto_create_network to false, since the network will exist momentarily. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#auto_create_network Project#auto_create_network}- Returns:
this
-
autoCreateNetwork
@Stability(Stable) public ProjectConfig.Builder autoCreateNetwork(com.hashicorp.cdktf.IResolvable autoCreateNetwork)
Sets the value ofProjectConfig.getAutoCreateNetwork()- Parameters:
autoCreateNetwork- Create the 'default' network automatically. Default true. If set to false, the default network will be deleted. Note that, for quota purposes, you will still need to have 1 network slot available to create the project successfully, even if you set auto_create_network to false, since the network will exist momentarily. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#auto_create_network Project#auto_create_network}- Returns:
this
-
billingAccount
@Stability(Stable) public ProjectConfig.Builder billingAccount(String billingAccount)
Sets the value ofProjectConfig.getBillingAccount()- Parameters:
billingAccount- The alphanumeric ID of the billing account this project belongs to. The user or service account performing this operation with Terraform must have Billing Account Administrator privileges (roles/billing.admin) in the organization. See Google Cloud Billing API Access Control for more details. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#billing_account Project#billing_account}- Returns:
this
-
deletionPolicy
@Stability(Stable) public ProjectConfig.Builder deletionPolicy(String deletionPolicy)
Sets the value ofProjectConfig.getDeletionPolicy()- Parameters:
deletionPolicy- The deletion policy for the Project. Setting PREVENT will protect the project against any destroy actions caused by a terraform apply or terraform destroy. Setting ABANDON allows the resource to be abandoned rather than deleted. Possible values are: "PREVENT", "ABANDON", "DELETE" Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#deletion_policy Project#deletion_policy}- Returns:
this
-
folderId
@Stability(Stable) public ProjectConfig.Builder folderId(String folderId)
Sets the value ofProjectConfig.getFolderId()- Parameters:
folderId- The numeric ID of the folder this project should be created under. Only one of org_id or folder_id may be specified. If the folder_id is specified, then the project is created under the specified folder. Changing this forces the project to be migrated to the newly specified folder. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#folder_id Project#folder_id}- Returns:
this
-
id
@Stability(Stable) public ProjectConfig.Builder id(String id)
Sets the value ofProjectConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#id Project#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
-
labels
@Stability(Stable) public ProjectConfig.Builder labels(Map<String,String> labels)
Sets the value ofProjectConfig.getLabels()- Parameters:
labels- A set of key/value label pairs to assign to the project. **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#labels Project#labels}- Returns:
this
-
orgId
@Stability(Stable) public ProjectConfig.Builder orgId(String orgId)
Sets the value ofProjectConfig.getOrgId()- Parameters:
orgId- The numeric ID of the organization this project belongs to. Changing this forces a new project to be created. Only one of org_id or folder_id may be specified. If the org_id is specified then the project is created at the top level. Changing this forces the project to be migrated to the newly specified organization. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#org_id Project#org_id}- Returns:
this
-
skipDelete
@Stability(Stable) public ProjectConfig.Builder skipDelete(Boolean skipDelete)
Sets the value ofProjectConfig.getSkipDelete()- Parameters:
skipDelete- If true, the Terraform resource can be deleted without deleting the Project via the Google API. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#skip_delete Project#skip_delete}- Returns:
this
-
skipDelete
@Stability(Stable) public ProjectConfig.Builder skipDelete(com.hashicorp.cdktf.IResolvable skipDelete)
Sets the value ofProjectConfig.getSkipDelete()- Parameters:
skipDelete- If true, the Terraform resource can be deleted without deleting the Project via the Google API. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#skip_delete Project#skip_delete}- Returns:
this
-
timeouts
@Stability(Stable) public ProjectConfig.Builder timeouts(ProjectTimeouts timeouts)
Sets the value ofProjectConfig.getTimeouts()- Parameters:
timeouts- timeouts block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/project#timeouts Project#timeouts}- Returns:
this
-
connection
@Stability(Experimental) public ProjectConfig.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 ProjectConfig.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 ProjectConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public ProjectConfig.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 ProjectConfig.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 ProjectConfig.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 ProjectConfig.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 ProjectConfig.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 ProjectConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public ProjectConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ProjectConfig>- Returns:
- a new instance of
ProjectConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-