com.pulumi.azure.cdn.outputs.FrontdoorRuleActionsResponseHeaderAction 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.cdn.outputs;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class FrontdoorRuleActionsResponseHeaderAction {
/**
* @return The action to be taken on the specified `header_name`. Possible values include `Append`, `Overwrite` or `Delete`.
*
* > **NOTE:** `Append` causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. `Overwrite` causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. `Delete` causes the header to be deleted from the request.
*
*/
private String headerAction;
/**
* @return The name of the header to modify.
*
*/
private String headerName;
/**
* @return The value to append or overwrite.
*
* ->**NOTE:** `value` is required if the `header_action` is set to `Append` or `Overwrite`.
*
*/
private @Nullable String value;
private FrontdoorRuleActionsResponseHeaderAction() {}
/**
* @return The action to be taken on the specified `header_name`. Possible values include `Append`, `Overwrite` or `Delete`.
*
* > **NOTE:** `Append` causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. `Overwrite` causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. `Delete` causes the header to be deleted from the request.
*
*/
public String headerAction() {
return this.headerAction;
}
/**
* @return The name of the header to modify.
*
*/
public String headerName() {
return this.headerName;
}
/**
* @return The value to append or overwrite.
*
* ->**NOTE:** `value` is required if the `header_action` is set to `Append` or `Overwrite`.
*
*/
public Optional value() {
return Optional.ofNullable(this.value);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(FrontdoorRuleActionsResponseHeaderAction defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private String headerAction;
private String headerName;
private @Nullable String value;
public Builder() {}
public Builder(FrontdoorRuleActionsResponseHeaderAction defaults) {
Objects.requireNonNull(defaults);
this.headerAction = defaults.headerAction;
this.headerName = defaults.headerName;
this.value = defaults.value;
}
@CustomType.Setter
public Builder headerAction(String headerAction) {
if (headerAction == null) {
throw new MissingRequiredPropertyException("FrontdoorRuleActionsResponseHeaderAction", "headerAction");
}
this.headerAction = headerAction;
return this;
}
@CustomType.Setter
public Builder headerName(String headerName) {
if (headerName == null) {
throw new MissingRequiredPropertyException("FrontdoorRuleActionsResponseHeaderAction", "headerName");
}
this.headerName = headerName;
return this;
}
@CustomType.Setter
public Builder value(@Nullable String value) {
this.value = value;
return this;
}
public FrontdoorRuleActionsResponseHeaderAction build() {
final var _resultValue = new FrontdoorRuleActionsResponseHeaderAction();
_resultValue.headerAction = headerAction;
_resultValue.headerName = headerName;
_resultValue.value = value;
return _resultValue;
}
}
}