Class NetworkServicesGatewayConfig.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • name

        @Stability(Stable)
        public NetworkServicesGatewayConfig.Builder name​(String name)
        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)
        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)
        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)
        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)
        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)
        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)
        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)
        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)
        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)
        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)
        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)
        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)
        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
      • scope

        @Stability(Stable)
        public NetworkServicesGatewayConfig.Builder scope​(String scope)
        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)
        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)
        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
      • connection

        @Stability(Experimental)
        public NetworkServicesGatewayConfig.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Sets the value of TerraformMetaArguments.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 of TerraformMetaArguments.getConnection()
        Parameters:
        connection - the value to be set.
        Returns:
        this
      • count

        @Stability(Experimental)
        public NetworkServicesGatewayConfig.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Sets the value of TerraformMetaArguments.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 of TerraformMetaArguments.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 of TerraformMetaArguments.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 of TerraformMetaArguments.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 of TerraformMetaArguments.getProvider()
        Parameters:
        provider - the value to be set.
        Returns:
        this
      • provisioners

        @Stability(Experimental)
        public NetworkServicesGatewayConfig.Builder provisioners​(List<? extends Object> provisioners)
        Sets the value of TerraformMetaArguments.getProvisioners()
        Parameters:
        provisioners - the value to be set.
        Returns:
        this