Class NetworkServicesEdgeCacheOrigin.Builder

    • Method Detail

      • connection

        @Stability(Experimental)
        public NetworkServicesEdgeCacheOrigin.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • connection

        @Stability(Experimental)
        public NetworkServicesEdgeCacheOrigin.Builder connection​(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public NetworkServicesEdgeCacheOrigin.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • dependsOn

        @Stability(Experimental)
        public NetworkServicesEdgeCacheOrigin.Builder dependsOn​(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
        Parameters:
        dependsOn - This parameter is required.
        Returns:
        this
      • forEach

        @Stability(Experimental)
        public NetworkServicesEdgeCacheOrigin.Builder forEach​(com.hashicorp.cdktf.ITerraformIterator forEach)
        Parameters:
        forEach - This parameter is required.
        Returns:
        this
      • lifecycle

        @Stability(Experimental)
        public NetworkServicesEdgeCacheOrigin.Builder lifecycle​(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
        Parameters:
        lifecycle - This parameter is required.
        Returns:
        this
      • provider

        @Stability(Experimental)
        public NetworkServicesEdgeCacheOrigin.Builder provider​(com.hashicorp.cdktf.TerraformProvider provider)
        Parameters:
        provider - This parameter is required.
        Returns:
        this
      • name

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder name​(String name)
        Name of the resource;

        provided by the client when the resource is created. The name must be 1-64 characters long, and match the regular expression [a-zA-Z][a-zA-Z0-9_-]* which means the first character must be a letter, and all following characters must be a dash, underscore, letter or digit. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#name NetworkServicesEdgeCacheOrigin#name}

        Parameters:
        name - Name of the resource;. This parameter is required.
        Returns:
        this
      • originAddress

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder originAddress​(String originAddress)
        A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket.

        This address will be used as the origin for cache requests - e.g. FQDN: media-backend.example.com, IPv4: 35.218.1.1, IPv6: 2607:f8b0:4012:809::200e, Cloud Storage: gs://bucketname When providing an FQDN (hostname), it must be publicly resolvable (e.g. via Google public DNS) and IP addresses must be publicly routable. It must not contain a protocol (e.g., https://) and it must not contain any slashes. If a Cloud Storage bucket is provided, it must be in the canonical "gs://bucketname" format. Other forms, such as "storage.googleapis.com", will be rejected. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#origin_address NetworkServicesEdgeCacheOrigin#origin_address}

        Parameters:
        originAddress - A fully qualified domain name (FQDN) or IP address reachable over the public Internet, or the address of a Google Cloud Storage bucket. This parameter is required.
        Returns:
        this
      • awsV4Authentication

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder awsV4Authentication​(NetworkServicesEdgeCacheOriginAwsV4Authentication awsV4Authentication)
        aws_v4_authentication block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#aws_v4_authentication NetworkServicesEdgeCacheOrigin#aws_v4_authentication}

        Parameters:
        awsV4Authentication - aws_v4_authentication block. This parameter is required.
        Returns:
        this
      • description

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder description​(String description)
        A human-readable description of the resource.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#description NetworkServicesEdgeCacheOrigin#description}

        Parameters:
        description - A human-readable description of the resource. This parameter is required.
        Returns:
        this
      • failoverOrigin

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder failoverOrigin​(String failoverOrigin)
        The Origin resource to try when the current origin cannot be reached.

        After maxAttempts is reached, the configured failoverOrigin will be used to fulfil the request. The value of timeout.maxAttemptsTimeout dictates the timeout across all origins. A reference to a Topic resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#failover_origin NetworkServicesEdgeCacheOrigin#failover_origin}

        Parameters:
        failoverOrigin - The Origin resource to try when the current origin cannot be reached. This parameter is required.
        Returns:
        this
      • id

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder id​(String id)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#id NetworkServicesEdgeCacheOrigin#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/network_services_edge_cache_origin#id NetworkServicesEdgeCacheOrigin#id}. This parameter is required.
        Returns:
        this
      • labels

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder labels​(Map<String,​String> labels)
        Set of label tags associated with the EdgeCache 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_edge_cache_origin#labels NetworkServicesEdgeCacheOrigin#labels}

        Parameters:
        labels - Set of label tags associated with the EdgeCache resource. This parameter is required.
        Returns:
        this
      • maxAttempts

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder maxAttempts​(Number maxAttempts)
        The maximum number of attempts to cache fill from this origin.

        Another attempt is made when a cache fill fails with one of the retryConditions. Once maxAttempts to this origin have failed the failoverOrigin will be used, if one is specified. That failoverOrigin may specify its own maxAttempts, retryConditions and failoverOrigin to control its own cache fill failures. The total number of allowed attempts to cache fill across this and failover origins is limited to four. The total time allowed for cache fill attempts across this and failover origins can be controlled with maxAttemptsTimeout. The last valid, non-retried response from all origins will be returned to the client. If no origin returns a valid response, an HTTP 502 will be returned to the client. Defaults to 1. Must be a value greater than 0 and less than 4. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#max_attempts NetworkServicesEdgeCacheOrigin#max_attempts}

        Parameters:
        maxAttempts - The maximum number of attempts to cache fill from this origin. This parameter is required.
        Returns:
        this
      • originOverrideAction

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder originOverrideAction​(NetworkServicesEdgeCacheOriginOriginOverrideAction originOverrideAction)
        origin_override_action block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#origin_override_action NetworkServicesEdgeCacheOrigin#origin_override_action}

        Parameters:
        originOverrideAction - origin_override_action block. This parameter is required.
        Returns:
        this
      • originRedirect

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder originRedirect​(NetworkServicesEdgeCacheOriginOriginRedirect originRedirect)
        origin_redirect block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#origin_redirect NetworkServicesEdgeCacheOrigin#origin_redirect}

        Parameters:
        originRedirect - origin_redirect block. This parameter is required.
        Returns:
        this
      • port

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder port​(Number port)
        The port to connect to the origin on.

        Defaults to port 443 for HTTP2 and HTTPS protocols, and port 80 for HTTP. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#port NetworkServicesEdgeCacheOrigin#port}

        Parameters:
        port - The port to connect to the origin on. This parameter is required.
        Returns:
        this
      • project

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder project​(String project)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#project NetworkServicesEdgeCacheOrigin#project}.

        Parameters:
        project - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#project NetworkServicesEdgeCacheOrigin#project}. This parameter is required.
        Returns:
        this
      • protocol

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder protocol​(String protocol)
        The protocol to use to connect to the configured origin.

        Defaults to HTTP2, and it is strongly recommended that users use HTTP2 for both security & performance. When using HTTP2 or HTTPS as the protocol, a valid, publicly-signed, unexpired TLS (SSL) certificate must be presented by the origin server. Possible values: ["HTTP2", "HTTPS", "HTTP"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#protocol NetworkServicesEdgeCacheOrigin#protocol}

        Parameters:
        protocol - The protocol to use to connect to the configured origin. This parameter is required.
        Returns:
        this
      • retryConditions

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder retryConditions​(List<String> retryConditions)
        Specifies one or more retry conditions for the configured origin.

        If the failure mode during a connection attempt to the origin matches the configured retryCondition(s), the origin request will be retried up to maxAttempts times. The failoverOrigin, if configured, will then be used to satisfy the request. The default retryCondition is "CONNECT_FAILURE". retryConditions apply to this origin, and not subsequent failoverOrigin(s), which may specify their own retryConditions and maxAttempts. Valid values are: * CONNECT_FAILURE: Retry on failures connecting to origins, for example due to connection timeouts. * HTTP_5XX: Retry if the origin responds with any 5xx response code, or if the origin does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. * GATEWAY_ERROR: Similar to 5xx, but only applies to response codes 502, 503 or 504. * RETRIABLE_4XX: Retry for retriable 4xx response codes, which include HTTP 409 (Conflict) and HTTP 429 (Too Many Requests) * NOT_FOUND: Retry if the origin returns a HTTP 404 (Not Found). This can be useful when generating video content, and the segment is not available yet. * FORBIDDEN: Retry if the origin returns a HTTP 403 (Forbidden). Possible values: ["CONNECT_FAILURE", "HTTP_5XX", "GATEWAY_ERROR", "RETRIABLE_4XX", "NOT_FOUND", "FORBIDDEN"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#retry_conditions NetworkServicesEdgeCacheOrigin#retry_conditions}

        Parameters:
        retryConditions - Specifies one or more retry conditions for the configured origin. This parameter is required.
        Returns:
        this
      • timeout

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder timeout​(NetworkServicesEdgeCacheOriginTimeout timeout)
        timeout block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#timeout NetworkServicesEdgeCacheOrigin#timeout}

        Parameters:
        timeout - timeout block. This parameter is required.
        Returns:
        this
      • timeouts

        @Stability(Stable)
        public NetworkServicesEdgeCacheOrigin.Builder timeouts​(NetworkServicesEdgeCacheOriginTimeouts timeouts)
        timeouts block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/network_services_edge_cache_origin#timeouts NetworkServicesEdgeCacheOrigin#timeouts}

        Parameters:
        timeouts - timeouts block. This parameter is required.
        Returns:
        this