Class Budget
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<Budget.Builder,
Budget>
Represents the output of the CreateBudget
operation. The content consists of the detailed metadata and
data file information, and the current status of the budget
object.
This is the Amazon Resource Name (ARN) pattern for a budget:
arn:aws:budgets::AccountId:budget/budgetName
- See Also:
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal AutoAdjustData
The parameters that determine the budget amount for an auto-adjusting budget.final Spend
The total amount of cost, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage that you want to track with your budget.final String
The name of a budget.final BudgetType
Specifies whether this budget tracks costs, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage.final String
Specifies whether this budget tracks costs, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage.static Budget.Builder
builder()
final CalculatedSpend
The actual and forecasted cost or usage that the budget tracks.The cost filters, such asRegion
,Service
,member account
,Tag
, orCost Category
, that are applied to a budget.final CostTypes
The types of costs that are included in thisCOST
budget.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final boolean
For responses, this returns true if the service returned a value for the CostFilters property.final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the PlannedBudgetLimits property.final Instant
The last time that you updated this budget.A map containing multipleBudgetLimit
, including current or future limits.static Class
<? extends Budget.Builder> final TimePeriod
The period of time that's covered by a budget.final TimeUnit
timeUnit()
The length of time until a budget resets the actual and forecasted spend.final String
The length of time until a budget resets the actual and forecasted spend.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
budgetName
The name of a budget. The name must be unique within an account. The
:
and\
characters, and the "/action/" substring, aren't allowed inBudgetName
.- Returns:
- The name of a budget. The name must be unique within an account. The
:
and\
characters, and the "/action/" substring, aren't allowed inBudgetName
.
-
budgetLimit
The total amount of cost, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage that you want to track with your budget.
BudgetLimit
is required for cost or usage budgets, but optional for RI or Savings Plans utilization or coverage budgets. RI and Savings Plans utilization or coverage budgets default to100
. This is the only valid value for RI or Savings Plans utilization or coverage budgets. You can't useBudgetLimit
withPlannedBudgetLimits
forCreateBudget
andUpdateBudget
actions.- Returns:
- The total amount of cost, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans
coverage that you want to track with your budget.
BudgetLimit
is required for cost or usage budgets, but optional for RI or Savings Plans utilization or coverage budgets. RI and Savings Plans utilization or coverage budgets default to100
. This is the only valid value for RI or Savings Plans utilization or coverage budgets. You can't useBudgetLimit
withPlannedBudgetLimits
forCreateBudget
andUpdateBudget
actions.
-
hasPlannedBudgetLimits
public final boolean hasPlannedBudgetLimits()For responses, this returns true if the service returned a value for the PlannedBudgetLimits property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
plannedBudgetLimits
A map containing multiple
BudgetLimit
, including current or future limits.PlannedBudgetLimits
is available for cost or usage budget and supports both monthly and quarterlyTimeUnit
.For monthly budgets, provide 12 months of
PlannedBudgetLimits
values. This must start from the current month and include the next 11 months. Thekey
is the start of the month,UTC
in epoch seconds.For quarterly budgets, provide four quarters of
PlannedBudgetLimits
value entries in standard calendar quarter increments. This must start from the current quarter and include the next three quarters. Thekey
is the start of the quarter,UTC
in epoch seconds.If the planned budget expires before 12 months for monthly or four quarters for quarterly, provide the
PlannedBudgetLimits
values only for the remaining periods.If the budget begins at a date in the future, provide
PlannedBudgetLimits
values from the start date of the budget.After all of the
BudgetLimit
values inPlannedBudgetLimits
are used, the budget continues to use the last limit as theBudgetLimit
. At that point, the planned budget provides the same experience as a fixed budget.DescribeBudget
andDescribeBudgets
response along withPlannedBudgetLimits
also containBudgetLimit
representing the current month or quarter limit present inPlannedBudgetLimits
. This only applies to budgets that are created withPlannedBudgetLimits
. Budgets that are created withoutPlannedBudgetLimits
only containBudgetLimit
. They don't containPlannedBudgetLimits
.Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasPlannedBudgetLimits()
method.- Returns:
- A map containing multiple
BudgetLimit
, including current or future limits.PlannedBudgetLimits
is available for cost or usage budget and supports both monthly and quarterlyTimeUnit
.For monthly budgets, provide 12 months of
PlannedBudgetLimits
values. This must start from the current month and include the next 11 months. Thekey
is the start of the month,UTC
in epoch seconds.For quarterly budgets, provide four quarters of
PlannedBudgetLimits
value entries in standard calendar quarter increments. This must start from the current quarter and include the next three quarters. Thekey
is the start of the quarter,UTC
in epoch seconds.If the planned budget expires before 12 months for monthly or four quarters for quarterly, provide the
PlannedBudgetLimits
values only for the remaining periods.If the budget begins at a date in the future, provide
PlannedBudgetLimits
values from the start date of the budget.After all of the
BudgetLimit
values inPlannedBudgetLimits
are used, the budget continues to use the last limit as theBudgetLimit
. At that point, the planned budget provides the same experience as a fixed budget.DescribeBudget
andDescribeBudgets
response along withPlannedBudgetLimits
also containBudgetLimit
representing the current month or quarter limit present inPlannedBudgetLimits
. This only applies to budgets that are created withPlannedBudgetLimits
. Budgets that are created withoutPlannedBudgetLimits
only containBudgetLimit
. They don't containPlannedBudgetLimits
.
-
hasCostFilters
public final boolean hasCostFilters()For responses, this returns true if the service returned a value for the CostFilters property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
costFilters
The cost filters, such as
Region
,Service
,member account
,Tag
, orCost Category
, that are applied to a budget.Amazon Web Services Budgets supports the following services as a
Service
filter for RI budgets:-
Amazon EC2
-
Amazon Redshift
-
Amazon Relational Database Service
-
Amazon ElastiCache
-
Amazon OpenSearch Service
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasCostFilters()
method.- Returns:
- The cost filters, such as
Region
,Service
,member account
,Tag
, orCost Category
, that are applied to a budget.Amazon Web Services Budgets supports the following services as a
Service
filter for RI budgets:-
Amazon EC2
-
Amazon Redshift
-
Amazon Relational Database Service
-
Amazon ElastiCache
-
Amazon OpenSearch Service
-
-
-
costTypes
The types of costs that are included in this
COST
budget.USAGE
,RI_UTILIZATION
,RI_COVERAGE
,SAVINGS_PLANS_UTILIZATION
, andSAVINGS_PLANS_COVERAGE
budgets do not haveCostTypes
.- Returns:
- The types of costs that are included in this
COST
budget.USAGE
,RI_UTILIZATION
,RI_COVERAGE
,SAVINGS_PLANS_UTILIZATION
, andSAVINGS_PLANS_COVERAGE
budgets do not haveCostTypes
.
-
timeUnit
The length of time until a budget resets the actual and forecasted spend.
If the service returns an enum value that is not available in the current SDK version,
timeUnit
will returnTimeUnit.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromtimeUnitAsString()
.- Returns:
- The length of time until a budget resets the actual and forecasted spend.
- See Also:
-
timeUnitAsString
The length of time until a budget resets the actual and forecasted spend.
If the service returns an enum value that is not available in the current SDK version,
timeUnit
will returnTimeUnit.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromtimeUnitAsString()
.- Returns:
- The length of time until a budget resets the actual and forecasted spend.
- See Also:
-
timePeriod
The period of time that's covered by a budget. You setthe start date and end date. The start date must come before the end date. The end date must come before
06/15/87 00:00 UTC
.If you create your budget and don't specify a start date, Amazon Web Services defaults to the start of your chosen time period (DAILY, MONTHLY, QUARTERLY, or ANNUALLY). For example, if you created your budget on January 24, 2018, chose
DAILY
, and didn't set a start date, Amazon Web Services set your start date to01/24/18 00:00 UTC
. If you choseMONTHLY
, Amazon Web Services set your start date to01/01/18 00:00 UTC
. If you didn't specify an end date, Amazon Web Services set your end date to06/15/87 00:00 UTC
. The defaults are the same for the Billing and Cost Management console and the API.You can change either date with the
UpdateBudget
operation.After the end date, Amazon Web Services deletes the budget and all the associated notifications and subscribers.
- Returns:
- The period of time that's covered by a budget. You setthe start date and end date. The start date must
come before the end date. The end date must come before
06/15/87 00:00 UTC
.If you create your budget and don't specify a start date, Amazon Web Services defaults to the start of your chosen time period (DAILY, MONTHLY, QUARTERLY, or ANNUALLY). For example, if you created your budget on January 24, 2018, chose
DAILY
, and didn't set a start date, Amazon Web Services set your start date to01/24/18 00:00 UTC
. If you choseMONTHLY
, Amazon Web Services set your start date to01/01/18 00:00 UTC
. If you didn't specify an end date, Amazon Web Services set your end date to06/15/87 00:00 UTC
. The defaults are the same for the Billing and Cost Management console and the API.You can change either date with the
UpdateBudget
operation.After the end date, Amazon Web Services deletes the budget and all the associated notifications and subscribers.
-
calculatedSpend
The actual and forecasted cost or usage that the budget tracks.
- Returns:
- The actual and forecasted cost or usage that the budget tracks.
-
budgetType
Specifies whether this budget tracks costs, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage.
If the service returns an enum value that is not available in the current SDK version,
budgetType
will returnBudgetType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available frombudgetTypeAsString()
.- Returns:
- Specifies whether this budget tracks costs, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage.
- See Also:
-
budgetTypeAsString
Specifies whether this budget tracks costs, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage.
If the service returns an enum value that is not available in the current SDK version,
budgetType
will returnBudgetType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available frombudgetTypeAsString()
.- Returns:
- Specifies whether this budget tracks costs, usage, RI utilization, RI coverage, Savings Plans utilization, or Savings Plans coverage.
- See Also:
-
lastUpdatedTime
The last time that you updated this budget.
- Returns:
- The last time that you updated this budget.
-
autoAdjustData
The parameters that determine the budget amount for an auto-adjusting budget.
- Returns:
- The parameters that determine the budget amount for an auto-adjusting budget.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<Budget.Builder,
Budget> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode() -
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value. -
getValueForField
-
sdkFields
-