Class LoadBalancerV2Origin.Builder

java.lang.Object
software.amazon.awscdk.services.cloudfront.origins.LoadBalancerV2Origin.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<LoadBalancerV2Origin>
Enclosing class:
LoadBalancerV2Origin

@Stability(Stable) public static final class LoadBalancerV2Origin.Builder extends Object implements software.amazon.jsii.Builder<LoadBalancerV2Origin>
A fluent builder for LoadBalancerV2Origin.
  • Method Details

    • create

      @Stability(Stable) public static LoadBalancerV2Origin.Builder create(ILoadBalancerV2 loadBalancer)
      Parameters:
      loadBalancer - This parameter is required.
      Returns:
      a new instance of LoadBalancerV2Origin.Builder.
    • connectionAttempts

      @Stability(Stable) public LoadBalancerV2Origin.Builder connectionAttempts(Number connectionAttempts)
      The number of times that CloudFront attempts to connect to the origin;

      valid values are 1, 2, or 3 attempts.

      Default: 3

      Parameters:
      connectionAttempts - The number of times that CloudFront attempts to connect to the origin;. This parameter is required.
      Returns:
      this
    • connectionTimeout

      @Stability(Stable) public LoadBalancerV2Origin.Builder connectionTimeout(Duration connectionTimeout)
      The number of seconds that CloudFront waits when trying to establish a connection to the origin.

      Valid values are 1-10 seconds, inclusive.

      Default: Duration.seconds(10)

      Parameters:
      connectionTimeout - The number of seconds that CloudFront waits when trying to establish a connection to the origin. This parameter is required.
      Returns:
      this
    • customHeaders

      @Stability(Stable) public LoadBalancerV2Origin.Builder customHeaders(Map<String,String> customHeaders)
      A list of HTTP header names and values that CloudFront adds to requests it sends to the origin.

      Default: {}

      Parameters:
      customHeaders - A list of HTTP header names and values that CloudFront adds to requests it sends to the origin. This parameter is required.
      Returns:
      this
    • originAccessControlId

      @Stability(Stable) public LoadBalancerV2Origin.Builder originAccessControlId(String originAccessControlId)
      The unique identifier of an origin access control for this origin.

      Default: - no origin access control

      Parameters:
      originAccessControlId - The unique identifier of an origin access control for this origin. This parameter is required.
      Returns:
      this
    • originId

      @Stability(Stable) public LoadBalancerV2Origin.Builder originId(String originId)
      A unique identifier for the origin.

      This value must be unique within the distribution.

      Default: - an originid will be generated for you

      Parameters:
      originId - A unique identifier for the origin. This parameter is required.
      Returns:
      this
    • originShieldEnabled

      @Stability(Stable) public LoadBalancerV2Origin.Builder originShieldEnabled(Boolean originShieldEnabled)
      Origin Shield is enabled by setting originShieldRegion to a valid region, after this to disable Origin Shield again you must set this flag to false.

      Default: - true

      Parameters:
      originShieldEnabled - Origin Shield is enabled by setting originShieldRegion to a valid region, after this to disable Origin Shield again you must set this flag to false. This parameter is required.
      Returns:
      this
    • originShieldRegion

      @Stability(Stable) public LoadBalancerV2Origin.Builder originShieldRegion(String originShieldRegion)
      When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance.

      Default: - origin shield not enabled

      Parameters:
      originShieldRegion - When you enable Origin Shield in the AWS Region that has the lowest latency to your origin, you can get better network performance. This parameter is required.
      Returns:
      this
      See Also:
    • originPath

      @Stability(Stable) public LoadBalancerV2Origin.Builder originPath(String originPath)
      An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin.

      Must begin, but not end, with '/' (e.g., '/production/images').

      Default: '/'

      Parameters:
      originPath - An optional path that CloudFront appends to the origin domain name when CloudFront requests content from the origin. This parameter is required.
      Returns:
      this
    • httpPort

      @Stability(Stable) public LoadBalancerV2Origin.Builder httpPort(Number httpPort)
      The HTTP port that CloudFront uses to connect to the origin.

      Default: 80

      Parameters:
      httpPort - The HTTP port that CloudFront uses to connect to the origin. This parameter is required.
      Returns:
      this
    • httpsPort

      @Stability(Stable) public LoadBalancerV2Origin.Builder httpsPort(Number httpsPort)
      The HTTPS port that CloudFront uses to connect to the origin.

      Default: 443

      Parameters:
      httpsPort - The HTTPS port that CloudFront uses to connect to the origin. This parameter is required.
      Returns:
      this
    • keepaliveTimeout

      @Stability(Stable) public LoadBalancerV2Origin.Builder keepaliveTimeout(Duration keepaliveTimeout)
      Specifies how long, in seconds, CloudFront persists its connection to the origin.

      The valid range is from 1 to 180 seconds, inclusive.

      Note that values over 60 seconds are possible only after a limit increase request for the origin response timeout quota has been approved in the target account; otherwise, values over 60 seconds will produce an error at deploy time.

      Default: Duration.seconds(5)

      Parameters:
      keepaliveTimeout - Specifies how long, in seconds, CloudFront persists its connection to the origin. This parameter is required.
      Returns:
      this
    • originSslProtocols

      @Stability(Stable) public LoadBalancerV2Origin.Builder originSslProtocols(List<? extends OriginSslPolicy> originSslProtocols)
      The SSL versions to use when interacting with the origin.

      Default: OriginSslPolicy.TLS_V1_2

      Parameters:
      originSslProtocols - The SSL versions to use when interacting with the origin. This parameter is required.
      Returns:
      this
    • protocolPolicy

      @Stability(Stable) public LoadBalancerV2Origin.Builder protocolPolicy(OriginProtocolPolicy protocolPolicy)
      Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin.

      Default: OriginProtocolPolicy.HTTPS_ONLY

      Parameters:
      protocolPolicy - Specifies the protocol (HTTP or HTTPS) that CloudFront uses to connect to the origin. This parameter is required.
      Returns:
      this
    • readTimeout

      @Stability(Stable) public LoadBalancerV2Origin.Builder readTimeout(Duration readTimeout)
      Specifies how long, in seconds, CloudFront waits for a response from the origin, also known as the origin response timeout.

      The valid range is from 1 to 180 seconds, inclusive.

      Note that values over 60 seconds are possible only after a limit increase request for the origin response timeout quota has been approved in the target account; otherwise, values over 60 seconds will produce an error at deploy time.

      Default: Duration.seconds(30)

      Parameters:
      readTimeout - Specifies how long, in seconds, CloudFront waits for a response from the origin, also known as the origin response timeout. This parameter is required.
      Returns:
      this
    • build

      @Stability(Stable) public LoadBalancerV2Origin build()
      Specified by:
      build in interface software.amazon.jsii.Builder<LoadBalancerV2Origin>
      Returns:
      a newly built instance of LoadBalancerV2Origin.