com.pulumi.aws.costexplorer.outputs.AnomalySubscriptionThresholdExpression Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aws Show documentation
Show all versions of aws Show documentation
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
// *** 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.costexplorer.outputs;
import com.pulumi.aws.costexplorer.outputs.AnomalySubscriptionThresholdExpressionAnd;
import com.pulumi.aws.costexplorer.outputs.AnomalySubscriptionThresholdExpressionCostCategory;
import com.pulumi.aws.costexplorer.outputs.AnomalySubscriptionThresholdExpressionDimension;
import com.pulumi.aws.costexplorer.outputs.AnomalySubscriptionThresholdExpressionNot;
import com.pulumi.aws.costexplorer.outputs.AnomalySubscriptionThresholdExpressionOr;
import com.pulumi.aws.costexplorer.outputs.AnomalySubscriptionThresholdExpressionTags;
import com.pulumi.core.annotations.CustomType;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class AnomalySubscriptionThresholdExpression {
/**
* @return Return results that match both Dimension objects.
*
*/
private @Nullable List ands;
/**
* @return Configuration block for the filter that's based on values. See Cost Category below.
*
*/
private @Nullable AnomalySubscriptionThresholdExpressionCostCategory costCategory;
/**
* @return Configuration block for the specific Dimension to use for.
*
*/
private @Nullable AnomalySubscriptionThresholdExpressionDimension dimension;
/**
* @return Return results that match both Dimension object.
*
*/
private @Nullable AnomalySubscriptionThresholdExpressionNot not;
/**
* @return Return results that match both Dimension object.
*
*/
private @Nullable List ors;
/**
* @return Configuration block for the specific Tag to use for. See Tags below.
*
*/
private @Nullable AnomalySubscriptionThresholdExpressionTags tags;
private AnomalySubscriptionThresholdExpression() {}
/**
* @return Return results that match both Dimension objects.
*
*/
public List ands() {
return this.ands == null ? List.of() : this.ands;
}
/**
* @return Configuration block for the filter that's based on values. See Cost Category below.
*
*/
public Optional costCategory() {
return Optional.ofNullable(this.costCategory);
}
/**
* @return Configuration block for the specific Dimension to use for.
*
*/
public Optional dimension() {
return Optional.ofNullable(this.dimension);
}
/**
* @return Return results that match both Dimension object.
*
*/
public Optional not() {
return Optional.ofNullable(this.not);
}
/**
* @return Return results that match both Dimension object.
*
*/
public List ors() {
return this.ors == null ? List.of() : this.ors;
}
/**
* @return Configuration block for the specific Tag to use for. See Tags below.
*
*/
public Optional tags() {
return Optional.ofNullable(this.tags);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(AnomalySubscriptionThresholdExpression defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable List ands;
private @Nullable AnomalySubscriptionThresholdExpressionCostCategory costCategory;
private @Nullable AnomalySubscriptionThresholdExpressionDimension dimension;
private @Nullable AnomalySubscriptionThresholdExpressionNot not;
private @Nullable List ors;
private @Nullable AnomalySubscriptionThresholdExpressionTags tags;
public Builder() {}
public Builder(AnomalySubscriptionThresholdExpression defaults) {
Objects.requireNonNull(defaults);
this.ands = defaults.ands;
this.costCategory = defaults.costCategory;
this.dimension = defaults.dimension;
this.not = defaults.not;
this.ors = defaults.ors;
this.tags = defaults.tags;
}
@CustomType.Setter
public Builder ands(@Nullable List ands) {
this.ands = ands;
return this;
}
public Builder ands(AnomalySubscriptionThresholdExpressionAnd... ands) {
return ands(List.of(ands));
}
@CustomType.Setter
public Builder costCategory(@Nullable AnomalySubscriptionThresholdExpressionCostCategory costCategory) {
this.costCategory = costCategory;
return this;
}
@CustomType.Setter
public Builder dimension(@Nullable AnomalySubscriptionThresholdExpressionDimension dimension) {
this.dimension = dimension;
return this;
}
@CustomType.Setter
public Builder not(@Nullable AnomalySubscriptionThresholdExpressionNot not) {
this.not = not;
return this;
}
@CustomType.Setter
public Builder ors(@Nullable List ors) {
this.ors = ors;
return this;
}
public Builder ors(AnomalySubscriptionThresholdExpressionOr... ors) {
return ors(List.of(ors));
}
@CustomType.Setter
public Builder tags(@Nullable AnomalySubscriptionThresholdExpressionTags tags) {
this.tags = tags;
return this;
}
public AnomalySubscriptionThresholdExpression build() {
final var _resultValue = new AnomalySubscriptionThresholdExpression();
_resultValue.ands = ands;
_resultValue.costCategory = costCategory;
_resultValue.dimension = dimension;
_resultValue.not = not;
_resultValue.ors = ors;
_resultValue.tags = tags;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy