Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.aws.cloudfront.inputs.DistributionOriginCustomOriginConfigArgs Maven / Gradle / Ivy
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.cloudfront.inputs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class DistributionOriginCustomOriginConfigArgs extends com.pulumi.resources.ResourceArgs {
public static final DistributionOriginCustomOriginConfigArgs Empty = new DistributionOriginCustomOriginConfigArgs();
/**
* HTTP port the custom origin listens on.
*
*/
@Import(name="httpPort", required=true)
private Output httpPort;
/**
* @return HTTP port the custom origin listens on.
*
*/
public Output httpPort() {
return this.httpPort;
}
/**
* HTTPS port the custom origin listens on.
*
*/
@Import(name="httpsPort", required=true)
private Output httpsPort;
/**
* @return HTTPS port the custom origin listens on.
*
*/
public Output httpsPort() {
return this.httpsPort;
}
@Import(name="originKeepaliveTimeout")
private @Nullable Output originKeepaliveTimeout;
public Optional> originKeepaliveTimeout() {
return Optional.ofNullable(this.originKeepaliveTimeout);
}
/**
* Origin protocol policy to apply to your origin. One of `http-only`, `https-only`, or `match-viewer`.
*
*/
@Import(name="originProtocolPolicy", required=true)
private Output originProtocolPolicy;
/**
* @return Origin protocol policy to apply to your origin. One of `http-only`, `https-only`, or `match-viewer`.
*
*/
public Output originProtocolPolicy() {
return this.originProtocolPolicy;
}
@Import(name="originReadTimeout")
private @Nullable Output originReadTimeout;
public Optional> originReadTimeout() {
return Optional.ofNullable(this.originReadTimeout);
}
/**
* List of SSL/TLS protocols that CloudFront can use when connecting to your origin over HTTPS. Valid values: `SSLv3`, `TLSv1`, `TLSv1.1`, `TLSv1.2`. For more information, see [Minimum Origin SSL Protocol](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginSSLProtocols) in the Amazon CloudFront Developer Guide.
*
*/
@Import(name="originSslProtocols", required=true)
private Output> originSslProtocols;
/**
* @return List of SSL/TLS protocols that CloudFront can use when connecting to your origin over HTTPS. Valid values: `SSLv3`, `TLSv1`, `TLSv1.1`, `TLSv1.2`. For more information, see [Minimum Origin SSL Protocol](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginSSLProtocols) in the Amazon CloudFront Developer Guide.
*
*/
public Output> originSslProtocols() {
return this.originSslProtocols;
}
private DistributionOriginCustomOriginConfigArgs() {}
private DistributionOriginCustomOriginConfigArgs(DistributionOriginCustomOriginConfigArgs $) {
this.httpPort = $.httpPort;
this.httpsPort = $.httpsPort;
this.originKeepaliveTimeout = $.originKeepaliveTimeout;
this.originProtocolPolicy = $.originProtocolPolicy;
this.originReadTimeout = $.originReadTimeout;
this.originSslProtocols = $.originSslProtocols;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(DistributionOriginCustomOriginConfigArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private DistributionOriginCustomOriginConfigArgs $;
public Builder() {
$ = new DistributionOriginCustomOriginConfigArgs();
}
public Builder(DistributionOriginCustomOriginConfigArgs defaults) {
$ = new DistributionOriginCustomOriginConfigArgs(Objects.requireNonNull(defaults));
}
/**
* @param httpPort HTTP port the custom origin listens on.
*
* @return builder
*
*/
public Builder httpPort(Output httpPort) {
$.httpPort = httpPort;
return this;
}
/**
* @param httpPort HTTP port the custom origin listens on.
*
* @return builder
*
*/
public Builder httpPort(Integer httpPort) {
return httpPort(Output.of(httpPort));
}
/**
* @param httpsPort HTTPS port the custom origin listens on.
*
* @return builder
*
*/
public Builder httpsPort(Output httpsPort) {
$.httpsPort = httpsPort;
return this;
}
/**
* @param httpsPort HTTPS port the custom origin listens on.
*
* @return builder
*
*/
public Builder httpsPort(Integer httpsPort) {
return httpsPort(Output.of(httpsPort));
}
public Builder originKeepaliveTimeout(@Nullable Output originKeepaliveTimeout) {
$.originKeepaliveTimeout = originKeepaliveTimeout;
return this;
}
public Builder originKeepaliveTimeout(Integer originKeepaliveTimeout) {
return originKeepaliveTimeout(Output.of(originKeepaliveTimeout));
}
/**
* @param originProtocolPolicy Origin protocol policy to apply to your origin. One of `http-only`, `https-only`, or `match-viewer`.
*
* @return builder
*
*/
public Builder originProtocolPolicy(Output originProtocolPolicy) {
$.originProtocolPolicy = originProtocolPolicy;
return this;
}
/**
* @param originProtocolPolicy Origin protocol policy to apply to your origin. One of `http-only`, `https-only`, or `match-viewer`.
*
* @return builder
*
*/
public Builder originProtocolPolicy(String originProtocolPolicy) {
return originProtocolPolicy(Output.of(originProtocolPolicy));
}
public Builder originReadTimeout(@Nullable Output originReadTimeout) {
$.originReadTimeout = originReadTimeout;
return this;
}
public Builder originReadTimeout(Integer originReadTimeout) {
return originReadTimeout(Output.of(originReadTimeout));
}
/**
* @param originSslProtocols List of SSL/TLS protocols that CloudFront can use when connecting to your origin over HTTPS. Valid values: `SSLv3`, `TLSv1`, `TLSv1.1`, `TLSv1.2`. For more information, see [Minimum Origin SSL Protocol](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginSSLProtocols) in the Amazon CloudFront Developer Guide.
*
* @return builder
*
*/
public Builder originSslProtocols(Output> originSslProtocols) {
$.originSslProtocols = originSslProtocols;
return this;
}
/**
* @param originSslProtocols List of SSL/TLS protocols that CloudFront can use when connecting to your origin over HTTPS. Valid values: `SSLv3`, `TLSv1`, `TLSv1.1`, `TLSv1.2`. For more information, see [Minimum Origin SSL Protocol](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginSSLProtocols) in the Amazon CloudFront Developer Guide.
*
* @return builder
*
*/
public Builder originSslProtocols(List originSslProtocols) {
return originSslProtocols(Output.of(originSslProtocols));
}
/**
* @param originSslProtocols List of SSL/TLS protocols that CloudFront can use when connecting to your origin over HTTPS. Valid values: `SSLv3`, `TLSv1`, `TLSv1.1`, `TLSv1.2`. For more information, see [Minimum Origin SSL Protocol](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesOriginSSLProtocols) in the Amazon CloudFront Developer Guide.
*
* @return builder
*
*/
public Builder originSslProtocols(String... originSslProtocols) {
return originSslProtocols(List.of(originSslProtocols));
}
public DistributionOriginCustomOriginConfigArgs build() {
if ($.httpPort == null) {
throw new MissingRequiredPropertyException("DistributionOriginCustomOriginConfigArgs", "httpPort");
}
if ($.httpsPort == null) {
throw new MissingRequiredPropertyException("DistributionOriginCustomOriginConfigArgs", "httpsPort");
}
if ($.originProtocolPolicy == null) {
throw new MissingRequiredPropertyException("DistributionOriginCustomOriginConfigArgs", "originProtocolPolicy");
}
if ($.originSslProtocols == null) {
throw new MissingRequiredPropertyException("DistributionOriginCustomOriginConfigArgs", "originSslProtocols");
}
return $;
}
}
}