Class ComputeServiceAttachmentConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_service_attachment.ComputeServiceAttachmentConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeServiceAttachmentConfig>
- Enclosing interface:
- ComputeServiceAttachmentConfig
@Stability(Stable) public static final class ComputeServiceAttachmentConfig.Builder extends Object implements software.amazon.jsii.Builder<ComputeServiceAttachmentConfig>
A builder forComputeServiceAttachmentConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
connectionPreference
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder connectionPreference(String connectionPreference)
Sets the value ofComputeServiceAttachmentConfig.getConnectionPreference()- Parameters:
connectionPreference- The connection preference to use for this service attachment. Valid values include "ACCEPT_AUTOMATIC", "ACCEPT_MANUAL". This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#connection_preference ComputeServiceAttachment#connection_preference}- Returns:
this
-
enableProxyProtocol
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder enableProxyProtocol(Boolean enableProxyProtocol)
Sets the value ofComputeServiceAttachmentConfig.getEnableProxyProtocol()- Parameters:
enableProxyProtocol- If true, enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#enable_proxy_protocol ComputeServiceAttachment#enable_proxy_protocol}- Returns:
this
-
enableProxyProtocol
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder enableProxyProtocol(com.hashicorp.cdktf.IResolvable enableProxyProtocol)
Sets the value ofComputeServiceAttachmentConfig.getEnableProxyProtocol()- Parameters:
enableProxyProtocol- If true, enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#enable_proxy_protocol ComputeServiceAttachment#enable_proxy_protocol}- Returns:
this
-
name
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder name(String name)
Sets the value ofComputeServiceAttachmentConfig.getName()- Parameters:
name- Name of the resource. This parameter is required. 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_service_attachment#name ComputeServiceAttachment#name}- Returns:
this
-
natSubnets
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder natSubnets(List<String> natSubnets)
Sets the value ofComputeServiceAttachmentConfig.getNatSubnets()- Parameters:
natSubnets- An array of subnets that is provided for NAT in this service attachment. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#nat_subnets ComputeServiceAttachment#nat_subnets}- Returns:
this
-
targetService
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder targetService(String targetService)
Sets the value ofComputeServiceAttachmentConfig.getTargetService()- Parameters:
targetService- The URL of a service serving the endpoint identified by this service attachment. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#target_service ComputeServiceAttachment#target_service}- Returns:
this
-
consumerAcceptLists
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder consumerAcceptLists(com.hashicorp.cdktf.IResolvable consumerAcceptLists)
Sets the value ofComputeServiceAttachmentConfig.getConsumerAcceptLists()- Parameters:
consumerAcceptLists- consumer_accept_lists block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#consumer_accept_lists ComputeServiceAttachment#consumer_accept_lists}- Returns:
this
-
consumerAcceptLists
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder consumerAcceptLists(List<? extends ComputeServiceAttachmentConsumerAcceptLists> consumerAcceptLists)
Sets the value ofComputeServiceAttachmentConfig.getConsumerAcceptLists()- Parameters:
consumerAcceptLists- consumer_accept_lists block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#consumer_accept_lists ComputeServiceAttachment#consumer_accept_lists}- Returns:
this
-
consumerRejectLists
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder consumerRejectLists(List<String> consumerRejectLists)
Sets the value ofComputeServiceAttachmentConfig.getConsumerRejectLists()- Parameters:
consumerRejectLists- An array of projects that are not allowed to connect to this service attachment. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#consumer_reject_lists ComputeServiceAttachment#consumer_reject_lists}- Returns:
this
-
description
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder description(String description)
Sets the value ofComputeServiceAttachmentConfig.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_service_attachment#description ComputeServiceAttachment#description}- Returns:
this
-
domainNames
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder domainNames(List<String> domainNames)
Sets the value ofComputeServiceAttachmentConfig.getDomainNames()- Parameters:
domainNames- If specified, the domain name will be used during the integration between the PSC connected endpoints and the Cloud DNS. For example, this is a valid domain name: "p.mycompany.com.". Current max number of domain names supported is 1. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#domain_names ComputeServiceAttachment#domain_names}- Returns:
this
-
id
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder id(String id)
Sets the value ofComputeServiceAttachmentConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#id ComputeServiceAttachment#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 ComputeServiceAttachmentConfig.Builder project(String project)
Sets the value ofComputeServiceAttachmentConfig.getProject()- Parameters:
project- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#project ComputeServiceAttachment#project}.- Returns:
this
-
reconcileConnections
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder reconcileConnections(Boolean reconcileConnections)
Sets the value ofComputeServiceAttachmentConfig.getReconcileConnections()- Parameters:
reconcileConnections- This flag determines whether a consumer accept/reject list change can reconcile the statuses of existing ACCEPTED or REJECTED PSC endpoints. If false, connection policy update will only affect existing PENDING PSC endpoints. Existing ACCEPTED/REJECTED endpoints will remain untouched regardless how the connection policy is modified . If true, update will affect both PENDING and ACCEPTED/REJECTED PSC endpoints. For example, an ACCEPTED PSC endpoint will be moved to REJECTED if its project is added to the reject list. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#reconcile_connections ComputeServiceAttachment#reconcile_connections}- Returns:
this
-
reconcileConnections
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder reconcileConnections(com.hashicorp.cdktf.IResolvable reconcileConnections)
Sets the value ofComputeServiceAttachmentConfig.getReconcileConnections()- Parameters:
reconcileConnections- This flag determines whether a consumer accept/reject list change can reconcile the statuses of existing ACCEPTED or REJECTED PSC endpoints. If false, connection policy update will only affect existing PENDING PSC endpoints. Existing ACCEPTED/REJECTED endpoints will remain untouched regardless how the connection policy is modified . If true, update will affect both PENDING and ACCEPTED/REJECTED PSC endpoints. For example, an ACCEPTED PSC endpoint will be moved to REJECTED if its project is added to the reject list. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#reconcile_connections ComputeServiceAttachment#reconcile_connections}- Returns:
this
-
region
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder region(String region)
Sets the value ofComputeServiceAttachmentConfig.getRegion()- Parameters:
region- URL of the region where the resource resides. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#region ComputeServiceAttachment#region}- Returns:
this
-
timeouts
@Stability(Stable) public ComputeServiceAttachmentConfig.Builder timeouts(ComputeServiceAttachmentTimeouts timeouts)
Sets the value ofComputeServiceAttachmentConfig.getTimeouts()- Parameters:
timeouts- timeouts block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_service_attachment#timeouts ComputeServiceAttachment#timeouts}- Returns:
this
-
connection
@Stability(Experimental) public ComputeServiceAttachmentConfig.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 ComputeServiceAttachmentConfig.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 ComputeServiceAttachmentConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public ComputeServiceAttachmentConfig.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 ComputeServiceAttachmentConfig.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 ComputeServiceAttachmentConfig.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 ComputeServiceAttachmentConfig.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 ComputeServiceAttachmentConfig.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 ComputeServiceAttachmentConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public ComputeServiceAttachmentConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeServiceAttachmentConfig>- Returns:
- a new instance of
ComputeServiceAttachmentConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-