Class ComputeTargetHttpsProxy.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.compute_target_https_proxy.ComputeTargetHttpsProxy.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<ComputeTargetHttpsProxy>
- Enclosing class:
- ComputeTargetHttpsProxy
@Stability(Stable) public static final class ComputeTargetHttpsProxy.Builder extends Object implements software.amazon.jsii.Builder<ComputeTargetHttpsProxy>
A fluent builder forComputeTargetHttpsProxy.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ComputeTargetHttpsProxybuild()ComputeTargetHttpsProxy.BuildercertificateManagerCertificates(List<String> certificateManagerCertificates)URLs to certificate manager certificate resources that are used to authenticate connections between users and the load balancer.ComputeTargetHttpsProxy.BuildercertificateMap(String certificateMap)A reference to the CertificateMap resource uri that identifies a certificate map associated with the given target proxy.ComputeTargetHttpsProxy.Builderconnection(com.hashicorp.cdktf.SSHProvisionerConnection connection)ComputeTargetHttpsProxy.Builderconnection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)ComputeTargetHttpsProxy.Buildercount(com.hashicorp.cdktf.TerraformCount count)ComputeTargetHttpsProxy.Buildercount(Number count)static ComputeTargetHttpsProxy.Buildercreate(software.constructs.Construct scope, String id)ComputeTargetHttpsProxy.BuilderdependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)ComputeTargetHttpsProxy.Builderdescription(String description)An optional description of this resource.ComputeTargetHttpsProxy.BuilderforEach(com.hashicorp.cdktf.ITerraformIterator forEach)ComputeTargetHttpsProxy.BuilderhttpKeepAliveTimeoutSec(Number httpKeepAliveTimeoutSec)Specifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds).ComputeTargetHttpsProxy.Builderid(String id)Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#id ComputeTargetHttpsProxy#id}.ComputeTargetHttpsProxy.Builderlifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)ComputeTargetHttpsProxy.Buildername(String name)Name of the resource.ComputeTargetHttpsProxy.Builderproject(String project)Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#project ComputeTargetHttpsProxy#project}.ComputeTargetHttpsProxy.Builderprovider(com.hashicorp.cdktf.TerraformProvider provider)ComputeTargetHttpsProxy.Builderprovisioners(List<? extends Object> provisioners)ComputeTargetHttpsProxy.BuilderproxyBind(com.hashicorp.cdktf.IResolvable proxyBind)This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.ComputeTargetHttpsProxy.BuilderproxyBind(Boolean proxyBind)This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.ComputeTargetHttpsProxy.BuilderquicOverride(String quicOverride)Specifies the QUIC override policy for this resource.ComputeTargetHttpsProxy.BuilderserverTlsPolicy(String serverTlsPolicy)A URL referring to a networksecurity.ServerTlsPolicy resource that describes how the proxy should authenticate inbound traffic.ComputeTargetHttpsProxy.BuildersslCertificates(List<String> sslCertificates)URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer.ComputeTargetHttpsProxy.BuildersslPolicy(String sslPolicy)A reference to the SslPolicy resource that will be associated with the TargetHttpsProxy resource.ComputeTargetHttpsProxy.Buildertimeouts(ComputeTargetHttpsProxyTimeouts timeouts)timeouts block.ComputeTargetHttpsProxy.BuildertlsEarlyData(String tlsEarlyData)Specifies whether TLS 1.3 0-RTT Data (“Early Data”) should be accepted for this service.ComputeTargetHttpsProxy.BuilderurlMap(String urlMap)A reference to the UrlMap resource that defines the mapping from URL to the BackendService.
-
-
-
Method Detail
-
create
@Stability(Stable) public static ComputeTargetHttpsProxy.Builder create(software.constructs.Construct scope, String id)
- Parameters:
scope- The scope in which to define this construct. This parameter is required.id- The scoped construct ID. This parameter is required.- Returns:
- a new instance of
ComputeTargetHttpsProxy.Builder.
-
connection
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection)
- Parameters:
connection- This parameter is required.- Returns:
this
-
connection
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
- Parameters:
connection- This parameter is required.- Returns:
this
-
count
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder count(Number count)
- Parameters:
count- This parameter is required.- Returns:
this
-
count
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder count(com.hashicorp.cdktf.TerraformCount count)
- Parameters:
count- This parameter is required.- Returns:
this
-
dependsOn
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder dependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
- Parameters:
dependsOn- This parameter is required.- Returns:
this
-
forEach
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach)
- Parameters:
forEach- This parameter is required.- Returns:
this
-
lifecycle
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
- Parameters:
lifecycle- This parameter is required.- Returns:
this
-
provider
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder provider(com.hashicorp.cdktf.TerraformProvider provider)
- Parameters:
provider- This parameter is required.- Returns:
this
-
provisioners
@Stability(Experimental) public ComputeTargetHttpsProxy.Builder provisioners(List<? extends Object> provisioners)
- Parameters:
provisioners- This parameter is required.- Returns:
this
-
name
@Stability(Stable) public ComputeTargetHttpsProxy.Builder name(String name)
Name of the resource.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_target_https_proxy#name ComputeTargetHttpsProxy#name}
- Parameters:
name- Name of the resource. This parameter is required.- Returns:
this
-
urlMap
@Stability(Stable) public ComputeTargetHttpsProxy.Builder urlMap(String urlMap)
A reference to the UrlMap resource that defines the mapping from URL to the BackendService.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#url_map ComputeTargetHttpsProxy#url_map}
- Parameters:
urlMap- A reference to the UrlMap resource that defines the mapping from URL to the BackendService. This parameter is required.- Returns:
this
-
certificateManagerCertificates
@Stability(Stable) public ComputeTargetHttpsProxy.Builder certificateManagerCertificates(List<String> certificateManagerCertificates)
URLs to certificate manager certificate resources that are used to authenticate connections between users and the load balancer.Certificate manager certificates only apply when the load balancing scheme is set to INTERNAL_MANAGED. For EXTERNAL and EXTERNAL_MANAGED, use certificate_map instead. sslCertificates and certificateManagerCertificates fields can not be defined together. Accepted format is '//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificates/{resourceName}' or just the self_link 'projects/{project}/locations/{location}/certificates/{resourceName}' Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#certificate_manager_certificates ComputeTargetHttpsProxy#certificate_manager_certificates}
- Parameters:
certificateManagerCertificates- URLs to certificate manager certificate resources that are used to authenticate connections between users and the load balancer. This parameter is required.- Returns:
this
-
certificateMap
@Stability(Stable) public ComputeTargetHttpsProxy.Builder certificateMap(String certificateMap)
A reference to the CertificateMap resource uri that identifies a certificate map associated with the given target proxy.This field is only supported for EXTERNAL and EXTERNAL_MANAGED load balancing schemes. For INTERNAL_MANAGED, use certificate_manager_certificates instead. Accepted format is '//certificatemanager.googleapis.com/projects/{project}/locations/{location}/certificateMaps/{resourceName}'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#certificate_map ComputeTargetHttpsProxy#certificate_map}
- Parameters:
certificateMap- A reference to the CertificateMap resource uri that identifies a certificate map associated with the given target proxy. This parameter is required.- Returns:
this
-
description
@Stability(Stable) public ComputeTargetHttpsProxy.Builder description(String 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_target_https_proxy#description ComputeTargetHttpsProxy#description}
- Parameters:
description- An optional description of this resource. This parameter is required.- Returns:
this
-
httpKeepAliveTimeoutSec
@Stability(Stable) public ComputeTargetHttpsProxy.Builder httpKeepAliveTimeoutSec(Number httpKeepAliveTimeoutSec)
Specifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds).If an HTTP keepalive is not specified, a default value (610 seconds) will be used. For Global external HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum allowed value is 1200 seconds. For Global external HTTP(S) load balancer (classic), this option is not available publicly. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#http_keep_alive_timeout_sec ComputeTargetHttpsProxy#http_keep_alive_timeout_sec}
- Parameters:
httpKeepAliveTimeoutSec- Specifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds). This parameter is required.- Returns:
this
-
id
@Stability(Stable) public ComputeTargetHttpsProxy.Builder id(String id)
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#id ComputeTargetHttpsProxy#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.
- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#id ComputeTargetHttpsProxy#id}. This parameter is required.- Returns:
this
-
project
@Stability(Stable) public ComputeTargetHttpsProxy.Builder project(String project)
Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#project ComputeTargetHttpsProxy#project}.- Parameters:
project- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#project ComputeTargetHttpsProxy#project}. This parameter is required.- Returns:
this
-
proxyBind
@Stability(Stable) public ComputeTargetHttpsProxy.Builder proxyBind(Boolean proxyBind)
This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#proxy_bind ComputeTargetHttpsProxy#proxy_bind}
- Parameters:
proxyBind- This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. This parameter is required.- Returns:
this
-
proxyBind
@Stability(Stable) public ComputeTargetHttpsProxy.Builder proxyBind(com.hashicorp.cdktf.IResolvable proxyBind)
This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#proxy_bind ComputeTargetHttpsProxy#proxy_bind}
- Parameters:
proxyBind- This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. This parameter is required.- Returns:
this
-
quicOverride
@Stability(Stable) public ComputeTargetHttpsProxy.Builder quicOverride(String quicOverride)
Specifies the QUIC override policy for this resource.This determines whether the load balancer will attempt to negotiate QUIC with clients or not. Can specify one of NONE, ENABLE, or DISABLE. If NONE is specified, Google manages whether QUIC is used. Default value: "NONE" Possible values: ["NONE", "ENABLE", "DISABLE"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#quic_override ComputeTargetHttpsProxy#quic_override}
- Parameters:
quicOverride- Specifies the QUIC override policy for this resource. This parameter is required.- Returns:
this
-
serverTlsPolicy
@Stability(Stable) public ComputeTargetHttpsProxy.Builder serverTlsPolicy(String serverTlsPolicy)
A URL referring to a networksecurity.ServerTlsPolicy resource that describes how the proxy should authenticate inbound traffic. serverTlsPolicy only applies to a global TargetHttpsProxy attached to globalForwardingRules with the loadBalancingScheme set to INTERNAL_SELF_MANAGED or EXTERNAL or EXTERNAL_MANAGED. For details which ServerTlsPolicy resources are accepted with INTERNAL_SELF_MANAGED and which with EXTERNAL, EXTERNAL_MANAGED loadBalancingScheme consult ServerTlsPolicy documentation. If left blank, communications are not encrypted.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#server_tls_policy ComputeTargetHttpsProxy#server_tls_policy}
- Parameters:
serverTlsPolicy- A URL referring to a networksecurity.ServerTlsPolicy resource that describes how the proxy should authenticate inbound traffic. serverTlsPolicy only applies to a global TargetHttpsProxy attached to globalForwardingRules with the loadBalancingScheme set to INTERNAL_SELF_MANAGED or EXTERNAL or EXTERNAL_MANAGED. For details which ServerTlsPolicy resources are accepted with INTERNAL_SELF_MANAGED and which with EXTERNAL, EXTERNAL_MANAGED loadBalancingScheme consult ServerTlsPolicy documentation. If left blank, communications are not encrypted. This parameter is required.- Returns:
this
-
sslCertificates
@Stability(Stable) public ComputeTargetHttpsProxy.Builder sslCertificates(List<String> sslCertificates)
URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer.Currently, you may specify up to 15 SSL certificates. sslCertificates do not apply when the load balancing scheme is set to INTERNAL_SELF_MANAGED. sslCertificates and certificateManagerCertificates can not be defined together. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#ssl_certificates ComputeTargetHttpsProxy#ssl_certificates}
- Parameters:
sslCertificates- URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. This parameter is required.- Returns:
this
-
sslPolicy
@Stability(Stable) public ComputeTargetHttpsProxy.Builder sslPolicy(String sslPolicy)
A reference to the SslPolicy resource that will be associated with the TargetHttpsProxy resource.If not set, the TargetHttpsProxy resource will not have any SSL policy configured. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#ssl_policy ComputeTargetHttpsProxy#ssl_policy}
- Parameters:
sslPolicy- A reference to the SslPolicy resource that will be associated with the TargetHttpsProxy resource. This parameter is required.- Returns:
this
-
timeouts
@Stability(Stable) public ComputeTargetHttpsProxy.Builder timeouts(ComputeTargetHttpsProxyTimeouts timeouts)
timeouts block.Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#timeouts ComputeTargetHttpsProxy#timeouts}
- Parameters:
timeouts- timeouts block. This parameter is required.- Returns:
this
-
tlsEarlyData
@Stability(Stable) public ComputeTargetHttpsProxy.Builder tlsEarlyData(String tlsEarlyData)
Specifies whether TLS 1.3 0-RTT Data (“Early Data”) should be accepted for this service. Early Data allows a TLS resumption handshake to include the initial application payload (a HTTP request) alongside the handshake, reducing the effective round trips to “zero”. This applies to TLS 1.3 connections over TCP (HTTP/2) as well as over UDP (QUIC/h3). Possible values: ["STRICT", "PERMISSIVE", "DISABLED"].Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_target_https_proxy#tls_early_data ComputeTargetHttpsProxy#tls_early_data}
- Parameters:
tlsEarlyData- Specifies whether TLS 1.3 0-RTT Data (“Early Data”) should be accepted for this service. Early Data allows a TLS resumption handshake to include the initial application payload (a HTTP request) alongside the handshake, reducing the effective round trips to “zero”. This applies to TLS 1.3 connections over TCP (HTTP/2) as well as over UDP (QUIC/h3). Possible values: ["STRICT", "PERMISSIVE", "DISABLED"]. This parameter is required.- Returns:
this
-
build
@Stability(Stable) public ComputeTargetHttpsProxy build()
- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<ComputeTargetHttpsProxy>- Returns:
- a newly built instance of
ComputeTargetHttpsProxy.
-
-