com.pulumi.azure.network.outputs.ApplicationGatewaySslPolicy 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.azure.network.outputs;
import com.pulumi.core.annotations.CustomType;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class ApplicationGatewaySslPolicy {
private @Nullable List cipherSuites;
/**
* @return A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are `TLSv1_0`, `TLSv1_1`, `TLSv1_2` and `TLSv1_3`.
*
* > **NOTE:** `disabled_protocols` cannot be set when `policy_name` or `policy_type` are set.
*
*/
private @Nullable List disabledProtocols;
private @Nullable String minProtocolVersion;
private @Nullable String policyName;
/**
* @return The Type of the Policy. Possible values are `Predefined`, `Custom` and `CustomV2`.
*
* > **NOTE:** `policy_type` is Required when `policy_name` is set - cannot be set if `disabled_protocols` is set.
*
*/
private @Nullable String policyType;
private ApplicationGatewaySslPolicy() {}
public List cipherSuites() {
return this.cipherSuites == null ? List.of() : this.cipherSuites;
}
/**
* @return A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are `TLSv1_0`, `TLSv1_1`, `TLSv1_2` and `TLSv1_3`.
*
* > **NOTE:** `disabled_protocols` cannot be set when `policy_name` or `policy_type` are set.
*
*/
public List disabledProtocols() {
return this.disabledProtocols == null ? List.of() : this.disabledProtocols;
}
public Optional minProtocolVersion() {
return Optional.ofNullable(this.minProtocolVersion);
}
public Optional policyName() {
return Optional.ofNullable(this.policyName);
}
/**
* @return The Type of the Policy. Possible values are `Predefined`, `Custom` and `CustomV2`.
*
* > **NOTE:** `policy_type` is Required when `policy_name` is set - cannot be set if `disabled_protocols` is set.
*
*/
public Optional policyType() {
return Optional.ofNullable(this.policyType);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ApplicationGatewaySslPolicy defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable List cipherSuites;
private @Nullable List disabledProtocols;
private @Nullable String minProtocolVersion;
private @Nullable String policyName;
private @Nullable String policyType;
public Builder() {}
public Builder(ApplicationGatewaySslPolicy defaults) {
Objects.requireNonNull(defaults);
this.cipherSuites = defaults.cipherSuites;
this.disabledProtocols = defaults.disabledProtocols;
this.minProtocolVersion = defaults.minProtocolVersion;
this.policyName = defaults.policyName;
this.policyType = defaults.policyType;
}
@CustomType.Setter
public Builder cipherSuites(@Nullable List cipherSuites) {
this.cipherSuites = cipherSuites;
return this;
}
public Builder cipherSuites(String... cipherSuites) {
return cipherSuites(List.of(cipherSuites));
}
@CustomType.Setter
public Builder disabledProtocols(@Nullable List disabledProtocols) {
this.disabledProtocols = disabledProtocols;
return this;
}
public Builder disabledProtocols(String... disabledProtocols) {
return disabledProtocols(List.of(disabledProtocols));
}
@CustomType.Setter
public Builder minProtocolVersion(@Nullable String minProtocolVersion) {
this.minProtocolVersion = minProtocolVersion;
return this;
}
@CustomType.Setter
public Builder policyName(@Nullable String policyName) {
this.policyName = policyName;
return this;
}
@CustomType.Setter
public Builder policyType(@Nullable String policyType) {
this.policyType = policyType;
return this;
}
public ApplicationGatewaySslPolicy build() {
final var _resultValue = new ApplicationGatewaySslPolicy();
_resultValue.cipherSuites = cipherSuites;
_resultValue.disabledProtocols = disabledProtocols;
_resultValue.minProtocolVersion = minProtocolVersion;
_resultValue.policyName = policyName;
_resultValue.policyType = policyType;
return _resultValue;
}
}
}