com.pulumi.azure.consumption.outputs.BudgetResourceGroupTimePeriod Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure Show documentation
Show all versions of azure Show documentation
A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.
// *** 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.consumption.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 BudgetResourceGroupTimePeriod {
/**
* @return The end date for the budget. If not set this will be 10 years after the start date.
*
*/
private @Nullable String endDate;
/**
* @return The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new Resource Group Consumption Budget to be created.
*
*/
private String startDate;
private BudgetResourceGroupTimePeriod() {}
/**
* @return The end date for the budget. If not set this will be 10 years after the start date.
*
*/
public Optional endDate() {
return Optional.ofNullable(this.endDate);
}
/**
* @return The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new Resource Group Consumption Budget to be created.
*
*/
public String startDate() {
return this.startDate;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(BudgetResourceGroupTimePeriod defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable String endDate;
private String startDate;
public Builder() {}
public Builder(BudgetResourceGroupTimePeriod defaults) {
Objects.requireNonNull(defaults);
this.endDate = defaults.endDate;
this.startDate = defaults.startDate;
}
@CustomType.Setter
public Builder endDate(@Nullable String endDate) {
this.endDate = endDate;
return this;
}
@CustomType.Setter
public Builder startDate(String startDate) {
if (startDate == null) {
throw new MissingRequiredPropertyException("BudgetResourceGroupTimePeriod", "startDate");
}
this.startDate = startDate;
return this;
}
public BudgetResourceGroupTimePeriod build() {
final var _resultValue = new BudgetResourceGroupTimePeriod();
_resultValue.endDate = endDate;
_resultValue.startDate = startDate;
return _resultValue;
}
}
}