BudgetProperties Class

  • java.lang.Object
    • com.azure.resourcemanager.consumption.fluent.models.BudgetProperties

Implements

public final class BudgetProperties
implements JsonSerializable<BudgetProperties>

The properties of the budget.

Constructor Summary

Constructor Description
BudgetProperties()

Creates an instance of BudgetProperties class.

Method Summary

Modifier and Type Method and Description
BigDecimal amount()

Get the amount property: The total amount of cost to track with the budget.

CategoryType category()

Get the category property: The category of the budget, whether the budget tracks cost or usage.

CurrentSpend currentSpend()

Get the currentSpend property: The current amount of cost which is being tracked for a budget.

BudgetFilter filter()

Get the filter property: May be used to filter budgets by user-specified dimensions and/or tags.

ForecastSpend forecastSpend()

Get the forecastSpend property: The forecasted cost which is being tracked for a budget.

static BudgetProperties fromJson(JsonReader jsonReader)

Reads an instance of BudgetProperties from the JsonReader.

Map<String,Notification> notifications()

Get the notifications property: Dictionary of notifications associated with the budget.

TimeGrainType timeGrain()

Get the timeGrain property: The time covered by a budget.

BudgetTimePeriod timePeriod()

Get the timePeriod property: Has start and end date of the budget.

JsonWriter toJson(JsonWriter jsonWriter)
void validate()

Validates the instance.

BudgetProperties withAmount(BigDecimal amount)

Set the amount property: The total amount of cost to track with the budget.

BudgetProperties withCategory(CategoryType category)

Set the category property: The category of the budget, whether the budget tracks cost or usage.

BudgetProperties withFilter(BudgetFilter filter)

Set the filter property: May be used to filter budgets by user-specified dimensions and/or tags.

BudgetProperties withNotifications(Map<String,Notification> notifications)

Set the notifications property: Dictionary of notifications associated with the budget.

BudgetProperties withTimeGrain(TimeGrainType timeGrain)

Set the timeGrain property: The time covered by a budget.

BudgetProperties withTimePeriod(BudgetTimePeriod timePeriod)

Set the timePeriod property: Has start and end date of the budget.

Methods inherited from java.lang.Object

Constructor Details

BudgetProperties

public BudgetProperties()

Creates an instance of BudgetProperties class.

Method Details

amount

public BigDecimal amount()

Get the amount property: The total amount of cost to track with the budget.

Returns:

the amount value.

category

public CategoryType category()

Get the category property: The category of the budget, whether the budget tracks cost or usage.

Returns:

the category value.

currentSpend

public CurrentSpend currentSpend()

Get the currentSpend property: The current amount of cost which is being tracked for a budget.

Returns:

the currentSpend value.

filter

public BudgetFilter filter()

Get the filter property: May be used to filter budgets by user-specified dimensions and/or tags.

Returns:

the filter value.

forecastSpend

public ForecastSpend forecastSpend()

Get the forecastSpend property: The forecasted cost which is being tracked for a budget.

Returns:

the forecastSpend value.

fromJson

public static BudgetProperties fromJson(JsonReader jsonReader)

Reads an instance of BudgetProperties from the JsonReader.

Parameters:

jsonReader - The JsonReader being read.

Returns:

An instance of BudgetProperties if the JsonReader was pointing to an instance of it, or null if it was pointing to JSON null.

Throws:

IOException

- If the deserialized JSON object was missing any required properties.

notifications

public Map<String,Notification> notifications()

Get the notifications property: Dictionary of notifications associated with the budget. Budget can have up to five notifications.

Returns:

the notifications value.

timeGrain

public TimeGrainType timeGrain()

Get the timeGrain property: The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers.

Returns:

the timeGrain value.

timePeriod

public BudgetTimePeriod timePeriod()

Get the timePeriod property: Has start and end date of 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. There are no restrictions on the end date.

Returns:

the timePeriod value.

toJson

public JsonWriter toJson(JsonWriter jsonWriter)

Parameters:

jsonWriter

Throws:

validate

public void validate()

Validates the instance.

withAmount

public BudgetProperties withAmount(BigDecimal amount)

Set the amount property: The total amount of cost to track with the budget.

Parameters:

amount - the amount value to set.

Returns:

the BudgetProperties object itself.

withCategory

public BudgetProperties withCategory(CategoryType category)

Set the category property: The category of the budget, whether the budget tracks cost or usage.

Parameters:

category - the category value to set.

Returns:

the BudgetProperties object itself.

withFilter

public BudgetProperties withFilter(BudgetFilter filter)

Set the filter property: May be used to filter budgets by user-specified dimensions and/or tags.

Parameters:

filter - the filter value to set.

Returns:

the BudgetProperties object itself.

withNotifications

public BudgetProperties withNotifications(Map<String,Notification> notifications)

Set the notifications property: Dictionary of notifications associated with the budget. Budget can have up to five notifications.

Parameters:

notifications - the notifications value to set.

Returns:

the BudgetProperties object itself.

withTimeGrain

public BudgetProperties withTimeGrain(TimeGrainType timeGrain)

Set the timeGrain property: The time covered by a budget. Tracking of the amount will be reset based on the time grain. BillingMonth, BillingQuarter, and BillingAnnual are only supported by WD customers.

Parameters:

timeGrain - the timeGrain value to set.

Returns:

the BudgetProperties object itself.

withTimePeriod

public BudgetProperties withTimePeriod(BudgetTimePeriod timePeriod)

Set the timePeriod property: Has start and end date of 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. There are no restrictions on the end date.

Parameters:

timePeriod - the timePeriod value to set.

Returns:

the BudgetProperties object itself.

Applies to