Class NetworkServicesGatewayConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.network_services_gateway.NetworkServicesGatewayConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<NetworkServicesGatewayConfig>
- Enclosing interface:
- NetworkServicesGatewayConfig
@Stability(Stable) public static final class NetworkServicesGatewayConfig.Builder extends Object implements software.amazon.jsii.Builder<NetworkServicesGatewayConfig>
A builder forNetworkServicesGatewayConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
name
@Stability(Stable) public NetworkServicesGatewayConfig.Builder name(String name)
Sets the value ofNetworkServicesGatewayConfig.getName()- Parameters:
name- Short name of the Gateway resource to be created. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#name NetworkServicesGateway#name}- Returns:
this
-
ports
@Stability(Stable) public NetworkServicesGatewayConfig.Builder ports(List<? extends Number> ports)
Sets the value ofNetworkServicesGatewayConfig.getPorts()- Parameters:
ports- One or more port numbers (1-65535), on which the Gateway will receive traffic. This parameter is required. The proxy binds to the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 and support multiple ports. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#ports NetworkServicesGateway#ports}- Returns:
this
-
type
@Stability(Stable) public NetworkServicesGatewayConfig.Builder type(String type)
Sets the value ofNetworkServicesGatewayConfig.getType()- Parameters:
type- Immutable. The type of the customer-managed gateway. Possible values are: * OPEN_MESH * SECURE_WEB_GATEWAY. Possible values: ["TYPE_UNSPECIFIED", "OPEN_MESH", "SECURE_WEB_GATEWAY"]. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#type NetworkServicesGateway#type}- Returns:
this
-
addresses
@Stability(Stable) public NetworkServicesGatewayConfig.Builder addresses(List<String> addresses)
Sets the value ofNetworkServicesGatewayConfig.getAddresses()- Parameters:
addresses- Zero or one IPv4-address on which the Gateway will receive the traffic. When no address is provided, an IP from the subnetwork is allocated This field only applies to gateways of type 'SECURE_WEB_GATEWAY'. Gateways of type 'OPEN_MESH' listen on 0.0.0.0. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#addresses NetworkServicesGateway#addresses}- Returns:
this
-
certificateUrls
@Stability(Stable) public NetworkServicesGatewayConfig.Builder certificateUrls(List<String> certificateUrls)
Sets the value ofNetworkServicesGatewayConfig.getCertificateUrls()- Parameters:
certificateUrls- A fully-qualified Certificates URL reference. The proxy presents a Certificate (selected based on SNI) when establishing a TLS connection. This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#certificate_urls NetworkServicesGateway#certificate_urls}- Returns:
this
-
deleteSwgAutogenRouterOnDestroy
@Stability(Stable) public NetworkServicesGatewayConfig.Builder deleteSwgAutogenRouterOnDestroy(Boolean deleteSwgAutogenRouterOnDestroy)
Sets the value ofNetworkServicesGatewayConfig.getDeleteSwgAutogenRouterOnDestroy()- Parameters:
deleteSwgAutogenRouterOnDestroy- When deleting a gateway of type 'SECURE_WEB_GATEWAY', this boolean option will also delete auto generated router by the gateway creation. If there is no other gateway of type 'SECURE_WEB_GATEWAY' remaining for that region and network it will be deleted. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#delete_swg_autogen_router_on_destroy NetworkServicesGateway#delete_swg_autogen_router_on_destroy}- Returns:
this
-
deleteSwgAutogenRouterOnDestroy
@Stability(Stable) public NetworkServicesGatewayConfig.Builder deleteSwgAutogenRouterOnDestroy(com.hashicorp.cdktf.IResolvable deleteSwgAutogenRouterOnDestroy)
Sets the value ofNetworkServicesGatewayConfig.getDeleteSwgAutogenRouterOnDestroy()- Parameters:
deleteSwgAutogenRouterOnDestroy- When deleting a gateway of type 'SECURE_WEB_GATEWAY', this boolean option will also delete auto generated router by the gateway creation. If there is no other gateway of type 'SECURE_WEB_GATEWAY' remaining for that region and network it will be deleted. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#delete_swg_autogen_router_on_destroy NetworkServicesGateway#delete_swg_autogen_router_on_destroy}- Returns:
this
-
description
@Stability(Stable) public NetworkServicesGatewayConfig.Builder description(String description)
Sets the value ofNetworkServicesGatewayConfig.getDescription()- Parameters:
description- A free-text description of the resource. Max length 1024 characters. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#description NetworkServicesGateway#description}- Returns:
this
-
gatewaySecurityPolicy
@Stability(Stable) public NetworkServicesGatewayConfig.Builder gatewaySecurityPolicy(String gatewaySecurityPolicy)
Sets the value ofNetworkServicesGatewayConfig.getGatewaySecurityPolicy()- Parameters:
gatewaySecurityPolicy- A fully-qualified GatewaySecurityPolicy URL reference. Defines how a server should apply security policy to inbound (VM to Proxy) initiated connections. For example: 'projects/* /locations/* /gatewaySecurityPolicies/swg-policy'. This policy is specific to gateways of type 'SECURE_WEB_GATEWAY'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#gateway_security_policy NetworkServicesGateway#gateway_security_policy} Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.- Returns:
this
-
id
@Stability(Stable) public NetworkServicesGatewayConfig.Builder id(String id)
Sets the value ofNetworkServicesGatewayConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#id NetworkServicesGateway#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 NetworkServicesGatewayConfig.Builder labels(Map<String,String> labels)
Sets the value ofNetworkServicesGatewayConfig.getLabels()- Parameters:
labels- Set of label tags associated with the Gateway resource. **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/network_services_gateway#labels NetworkServicesGateway#labels}- Returns:
this
-
location
@Stability(Stable) public NetworkServicesGatewayConfig.Builder location(String location)
Sets the value ofNetworkServicesGatewayConfig.getLocation()- Parameters:
location- The location of the gateway. The default value is 'global'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#location NetworkServicesGateway#location}- Returns:
this
-
network
@Stability(Stable) public NetworkServicesGatewayConfig.Builder network(String network)
Sets the value ofNetworkServicesGatewayConfig.getNetwork()- Parameters:
network- The relative resource name identifying the VPC network that is using this configuration. For example: 'projects/* /global/networks/network-1'. Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#network NetworkServicesGateway#network} Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.- Returns:
this
-
project
@Stability(Stable) public NetworkServicesGatewayConfig.Builder project(String project)
Sets the value ofNetworkServicesGatewayConfig.getProject()- Parameters:
project- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#project NetworkServicesGateway#project}.- Returns:
this
-
scope
@Stability(Stable) public NetworkServicesGatewayConfig.Builder scope(String scope)
Sets the value ofNetworkServicesGatewayConfig.getScope()- Parameters:
scope- Immutable. Scope determines how configuration across multiple Gateway instances are merged. The configuration for multiple Gateway instances with the same scope will be merged as presented as a single coniguration to the proxy/load balancer. Max length 64 characters. Scope should start with a letter and can only have letters, numbers, hyphens. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#scope NetworkServicesGateway#scope}- Returns:
this
-
serverTlsPolicy
@Stability(Stable) public NetworkServicesGatewayConfig.Builder serverTlsPolicy(String serverTlsPolicy)
Sets the value ofNetworkServicesGatewayConfig.getServerTlsPolicy()- Parameters:
serverTlsPolicy- A fully-qualified ServerTLSPolicy URL reference. Specifies how TLS traffic is terminated. If empty, TLS termination is disabled. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#server_tls_policy NetworkServicesGateway#server_tls_policy}- Returns:
this
-
subnetwork
@Stability(Stable) public NetworkServicesGatewayConfig.Builder subnetwork(String subnetwork)
Sets the value ofNetworkServicesGatewayConfig.getSubnetwork()- Parameters:
subnetwork- The relative resource name identifying the subnetwork in which this SWG is allocated. For example: 'projects/* /regions/us-central1/subnetworks/network-1'. Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#subnetwork NetworkServicesGateway#subnetwork} Note: The above comment contained a comment block ending sequence (* followed by /). We have introduced a space between to prevent syntax errors. Please ignore the space.- Returns:
this
-
timeouts
@Stability(Stable) public NetworkServicesGatewayConfig.Builder timeouts(NetworkServicesGatewayTimeouts timeouts)
Sets the value ofNetworkServicesGatewayConfig.getTimeouts()- Parameters:
timeouts- timeouts block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_gateway#timeouts NetworkServicesGateway#timeouts}- Returns:
this
-
connection
@Stability(Experimental) public NetworkServicesGatewayConfig.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 NetworkServicesGatewayConfig.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 NetworkServicesGatewayConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public NetworkServicesGatewayConfig.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 NetworkServicesGatewayConfig.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 NetworkServicesGatewayConfig.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 NetworkServicesGatewayConfig.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 NetworkServicesGatewayConfig.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 NetworkServicesGatewayConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public NetworkServicesGatewayConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<NetworkServicesGatewayConfig>- Returns:
- a new instance of
NetworkServicesGatewayConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-