/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
namespace Aws
{
namespace Budgets
{
/**
* Use the Amazon Web Services Budgets API to plan your service usage, service
* costs, and instance reservations. This API reference provides descriptions,
* syntax, and usage examples for each of the actions and data types for the Amazon
* Web Services Budgets feature.
Budgets provide you with a way to see the
* following information:
-
How close your plan is to your budgeted
* amount or to the free tier limits
-
Your usage-to-date,
* including how much you've used of your Reserved Instances (RIs)
-
*
Your current estimated charges from Amazon Web Services, and how much your
* predicted usage will accrue in charges by the end of the month
-
*
How much of your budget has been used
Amazon Web Services
* updates your budget status several times a day. Budgets track your unblended
* costs, subscriptions, refunds, and RIs. You can create the following types of
* budgets:
-
Cost budgets - Plan how much you want to spend
* on a service.
-
Usage budgets - Plan how much you want
* to use one or more services.
-
RI utilization budgets -
* Define a utilization threshold, and receive alerts when your RI usage falls
* below that threshold. This lets you see if your RIs are unused or
* under-utilized.
-
RI coverage budgets - Define a
* coverage threshold, and receive alerts when the number of your instance hours
* that are covered by RIs fall below that threshold. This lets you see how much of
* your instance usage is covered by a reservation.
Service
* Endpoint
The Amazon Web Services Budgets API provides the following
* endpoint:
For
* information about costs that are associated with the Amazon Web Services Budgets
* API, see Amazon
* Web Services Cost Management Pricing.
*/
class AWS_BUDGETS_API BudgetsClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods
{
public:
typedef Aws::Client::AWSJsonClient BASECLASS;
static const char* SERVICE_NAME;
static const char* ALLOCATION_TAG;
typedef BudgetsClientConfiguration ClientConfigurationType;
typedef BudgetsEndpointProvider EndpointProviderType;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
BudgetsClient(const Aws::Budgets::BudgetsClientConfiguration& clientConfiguration = Aws::Budgets::BudgetsClientConfiguration(),
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG));
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
BudgetsClient(const Aws::Auth::AWSCredentials& credentials,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::Budgets::BudgetsClientConfiguration& clientConfiguration = Aws::Budgets::BudgetsClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
BudgetsClient(const std::shared_ptr& credentialsProvider,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::Budgets::BudgetsClientConfiguration& clientConfiguration = Aws::Budgets::BudgetsClientConfiguration());
/* Legacy constructors due deprecation */
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
BudgetsClient(const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
BudgetsClient(const Aws::Auth::AWSCredentials& credentials,
const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
BudgetsClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration);
/* End of legacy constructors due deprecation */
virtual ~BudgetsClient();
/**
* Creates a budget and, if included, notifications and subscribers.
* Only one of BudgetLimit
or
* PlannedBudgetLimits
can be present in the syntax at one time. Use
* the syntax that matches your case. The Request Syntax section shows the
* BudgetLimit
syntax. For PlannedBudgetLimits
, see the
* Examples
* section.
See Also:
AWS
* API Reference
*/
virtual Model::CreateBudgetOutcome CreateBudget(const Model::CreateBudgetRequest& request) const;
/**
* A Callable wrapper for CreateBudget that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateBudgetOutcomeCallable CreateBudgetCallable(const CreateBudgetRequestT& request) const
{
return SubmitCallable(&BudgetsClient::CreateBudget, request);
}
/**
* An Async wrapper for CreateBudget that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateBudgetAsync(const CreateBudgetRequestT& request, const CreateBudgetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::CreateBudget, request, handler, context);
}
/**
* Creates a budget action.
See Also:
AWS
* API Reference
*/
virtual Model::CreateBudgetActionOutcome CreateBudgetAction(const Model::CreateBudgetActionRequest& request) const;
/**
* A Callable wrapper for CreateBudgetAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateBudgetActionOutcomeCallable CreateBudgetActionCallable(const CreateBudgetActionRequestT& request) const
{
return SubmitCallable(&BudgetsClient::CreateBudgetAction, request);
}
/**
* An Async wrapper for CreateBudgetAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateBudgetActionAsync(const CreateBudgetActionRequestT& request, const CreateBudgetActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::CreateBudgetAction, request, handler, context);
}
/**
* Creates a notification. You must create the budget before you create the
* associated notification.
See Also:
AWS
* API Reference
*/
virtual Model::CreateNotificationOutcome CreateNotification(const Model::CreateNotificationRequest& request) const;
/**
* A Callable wrapper for CreateNotification that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateNotificationOutcomeCallable CreateNotificationCallable(const CreateNotificationRequestT& request) const
{
return SubmitCallable(&BudgetsClient::CreateNotification, request);
}
/**
* An Async wrapper for CreateNotification that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateNotificationAsync(const CreateNotificationRequestT& request, const CreateNotificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::CreateNotification, request, handler, context);
}
/**
* Creates a subscriber. You must create the associated budget and notification
* before you create the subscriber.
See Also:
AWS
* API Reference
*/
virtual Model::CreateSubscriberOutcome CreateSubscriber(const Model::CreateSubscriberRequest& request) const;
/**
* A Callable wrapper for CreateSubscriber that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateSubscriberOutcomeCallable CreateSubscriberCallable(const CreateSubscriberRequestT& request) const
{
return SubmitCallable(&BudgetsClient::CreateSubscriber, request);
}
/**
* An Async wrapper for CreateSubscriber that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateSubscriberAsync(const CreateSubscriberRequestT& request, const CreateSubscriberResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::CreateSubscriber, request, handler, context);
}
/**
* Deletes a budget. You can delete your budget at any time.
* Deleting a budget also deletes the notifications and subscribers that are
* associated with that budget.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteBudgetOutcome DeleteBudget(const Model::DeleteBudgetRequest& request) const;
/**
* A Callable wrapper for DeleteBudget that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteBudgetOutcomeCallable DeleteBudgetCallable(const DeleteBudgetRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DeleteBudget, request);
}
/**
* An Async wrapper for DeleteBudget that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteBudgetAsync(const DeleteBudgetRequestT& request, const DeleteBudgetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DeleteBudget, request, handler, context);
}
/**
* Deletes a budget action.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteBudgetActionOutcome DeleteBudgetAction(const Model::DeleteBudgetActionRequest& request) const;
/**
* A Callable wrapper for DeleteBudgetAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteBudgetActionOutcomeCallable DeleteBudgetActionCallable(const DeleteBudgetActionRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DeleteBudgetAction, request);
}
/**
* An Async wrapper for DeleteBudgetAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteBudgetActionAsync(const DeleteBudgetActionRequestT& request, const DeleteBudgetActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DeleteBudgetAction, request, handler, context);
}
/**
* Deletes a notification.
Deleting a notification also
* deletes the subscribers that are associated with the notification.
* See Also:
AWS
* API Reference
*/
virtual Model::DeleteNotificationOutcome DeleteNotification(const Model::DeleteNotificationRequest& request) const;
/**
* A Callable wrapper for DeleteNotification that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteNotificationOutcomeCallable DeleteNotificationCallable(const DeleteNotificationRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DeleteNotification, request);
}
/**
* An Async wrapper for DeleteNotification that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteNotificationAsync(const DeleteNotificationRequestT& request, const DeleteNotificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DeleteNotification, request, handler, context);
}
/**
* Deletes a subscriber.
Deleting the last subscriber to a
* notification also deletes the notification.
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteSubscriberOutcome DeleteSubscriber(const Model::DeleteSubscriberRequest& request) const;
/**
* A Callable wrapper for DeleteSubscriber that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteSubscriberOutcomeCallable DeleteSubscriberCallable(const DeleteSubscriberRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DeleteSubscriber, request);
}
/**
* An Async wrapper for DeleteSubscriber that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteSubscriberAsync(const DeleteSubscriberRequestT& request, const DeleteSubscriberResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DeleteSubscriber, request, handler, context);
}
/**
* Describes a budget.
The Request Syntax section shows the
* BudgetLimit
syntax. For PlannedBudgetLimits
, see the
* Examples
* section.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeBudgetOutcome DescribeBudget(const Model::DescribeBudgetRequest& request) const;
/**
* A Callable wrapper for DescribeBudget that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeBudgetOutcomeCallable DescribeBudgetCallable(const DescribeBudgetRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeBudget, request);
}
/**
* An Async wrapper for DescribeBudget that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeBudgetAsync(const DescribeBudgetRequestT& request, const DescribeBudgetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeBudget, request, handler, context);
}
/**
* Describes a budget action detail.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeBudgetActionOutcome DescribeBudgetAction(const Model::DescribeBudgetActionRequest& request) const;
/**
* A Callable wrapper for DescribeBudgetAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeBudgetActionOutcomeCallable DescribeBudgetActionCallable(const DescribeBudgetActionRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeBudgetAction, request);
}
/**
* An Async wrapper for DescribeBudgetAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeBudgetActionAsync(const DescribeBudgetActionRequestT& request, const DescribeBudgetActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeBudgetAction, request, handler, context);
}
/**
* Describes a budget action history detail.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeBudgetActionHistoriesOutcome DescribeBudgetActionHistories(const Model::DescribeBudgetActionHistoriesRequest& request) const;
/**
* A Callable wrapper for DescribeBudgetActionHistories that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeBudgetActionHistoriesOutcomeCallable DescribeBudgetActionHistoriesCallable(const DescribeBudgetActionHistoriesRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeBudgetActionHistories, request);
}
/**
* An Async wrapper for DescribeBudgetActionHistories that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeBudgetActionHistoriesAsync(const DescribeBudgetActionHistoriesRequestT& request, const DescribeBudgetActionHistoriesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeBudgetActionHistories, request, handler, context);
}
/**
* Describes all of the budget actions for an account.
See
* Also:
AWS
* API Reference
*/
virtual Model::DescribeBudgetActionsForAccountOutcome DescribeBudgetActionsForAccount(const Model::DescribeBudgetActionsForAccountRequest& request) const;
/**
* A Callable wrapper for DescribeBudgetActionsForAccount that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeBudgetActionsForAccountOutcomeCallable DescribeBudgetActionsForAccountCallable(const DescribeBudgetActionsForAccountRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeBudgetActionsForAccount, request);
}
/**
* An Async wrapper for DescribeBudgetActionsForAccount that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeBudgetActionsForAccountAsync(const DescribeBudgetActionsForAccountRequestT& request, const DescribeBudgetActionsForAccountResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeBudgetActionsForAccount, request, handler, context);
}
/**
* Describes all of the budget actions for a budget.
See Also:
* AWS
* API Reference
*/
virtual Model::DescribeBudgetActionsForBudgetOutcome DescribeBudgetActionsForBudget(const Model::DescribeBudgetActionsForBudgetRequest& request) const;
/**
* A Callable wrapper for DescribeBudgetActionsForBudget that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeBudgetActionsForBudgetOutcomeCallable DescribeBudgetActionsForBudgetCallable(const DescribeBudgetActionsForBudgetRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeBudgetActionsForBudget, request);
}
/**
* An Async wrapper for DescribeBudgetActionsForBudget that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeBudgetActionsForBudgetAsync(const DescribeBudgetActionsForBudgetRequestT& request, const DescribeBudgetActionsForBudgetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeBudgetActionsForBudget, request, handler, context);
}
/**
* Lists the budget names and notifications that are associated with an
* account.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeBudgetNotificationsForAccountOutcome DescribeBudgetNotificationsForAccount(const Model::DescribeBudgetNotificationsForAccountRequest& request) const;
/**
* A Callable wrapper for DescribeBudgetNotificationsForAccount that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeBudgetNotificationsForAccountOutcomeCallable DescribeBudgetNotificationsForAccountCallable(const DescribeBudgetNotificationsForAccountRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeBudgetNotificationsForAccount, request);
}
/**
* An Async wrapper for DescribeBudgetNotificationsForAccount that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeBudgetNotificationsForAccountAsync(const DescribeBudgetNotificationsForAccountRequestT& request, const DescribeBudgetNotificationsForAccountResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeBudgetNotificationsForAccount, request, handler, context);
}
/**
* Describes the history for DAILY
, MONTHLY
, and
* QUARTERLY
budgets. Budget history isn't available for
* ANNUAL
budgets.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeBudgetPerformanceHistoryOutcome DescribeBudgetPerformanceHistory(const Model::DescribeBudgetPerformanceHistoryRequest& request) const;
/**
* A Callable wrapper for DescribeBudgetPerformanceHistory that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeBudgetPerformanceHistoryOutcomeCallable DescribeBudgetPerformanceHistoryCallable(const DescribeBudgetPerformanceHistoryRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeBudgetPerformanceHistory, request);
}
/**
* An Async wrapper for DescribeBudgetPerformanceHistory that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeBudgetPerformanceHistoryAsync(const DescribeBudgetPerformanceHistoryRequestT& request, const DescribeBudgetPerformanceHistoryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeBudgetPerformanceHistory, request, handler, context);
}
/**
* Lists the budgets that are associated with an account.
The
* Request Syntax section shows the BudgetLimit
syntax. For
* PlannedBudgetLimits
, see the Examples
* section.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeBudgetsOutcome DescribeBudgets(const Model::DescribeBudgetsRequest& request) const;
/**
* A Callable wrapper for DescribeBudgets that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeBudgetsOutcomeCallable DescribeBudgetsCallable(const DescribeBudgetsRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeBudgets, request);
}
/**
* An Async wrapper for DescribeBudgets that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeBudgetsAsync(const DescribeBudgetsRequestT& request, const DescribeBudgetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeBudgets, request, handler, context);
}
/**
* Lists the notifications that are associated with a budget.
See
* Also:
AWS
* API Reference
*/
virtual Model::DescribeNotificationsForBudgetOutcome DescribeNotificationsForBudget(const Model::DescribeNotificationsForBudgetRequest& request) const;
/**
* A Callable wrapper for DescribeNotificationsForBudget that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeNotificationsForBudgetOutcomeCallable DescribeNotificationsForBudgetCallable(const DescribeNotificationsForBudgetRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeNotificationsForBudget, request);
}
/**
* An Async wrapper for DescribeNotificationsForBudget that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeNotificationsForBudgetAsync(const DescribeNotificationsForBudgetRequestT& request, const DescribeNotificationsForBudgetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeNotificationsForBudget, request, handler, context);
}
/**
* Lists the subscribers that are associated with a notification.
See
* Also:
AWS
* API Reference
*/
virtual Model::DescribeSubscribersForNotificationOutcome DescribeSubscribersForNotification(const Model::DescribeSubscribersForNotificationRequest& request) const;
/**
* A Callable wrapper for DescribeSubscribersForNotification that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeSubscribersForNotificationOutcomeCallable DescribeSubscribersForNotificationCallable(const DescribeSubscribersForNotificationRequestT& request) const
{
return SubmitCallable(&BudgetsClient::DescribeSubscribersForNotification, request);
}
/**
* An Async wrapper for DescribeSubscribersForNotification that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeSubscribersForNotificationAsync(const DescribeSubscribersForNotificationRequestT& request, const DescribeSubscribersForNotificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::DescribeSubscribersForNotification, request, handler, context);
}
/**
* Executes a budget action.
See Also:
AWS
* API Reference
*/
virtual Model::ExecuteBudgetActionOutcome ExecuteBudgetAction(const Model::ExecuteBudgetActionRequest& request) const;
/**
* A Callable wrapper for ExecuteBudgetAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ExecuteBudgetActionOutcomeCallable ExecuteBudgetActionCallable(const ExecuteBudgetActionRequestT& request) const
{
return SubmitCallable(&BudgetsClient::ExecuteBudgetAction, request);
}
/**
* An Async wrapper for ExecuteBudgetAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ExecuteBudgetActionAsync(const ExecuteBudgetActionRequestT& request, const ExecuteBudgetActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::ExecuteBudgetAction, request, handler, context);
}
/**
* Updates a budget. You can change every part of a budget except for the
* budgetName
and the calculatedSpend
. When you modify a
* budget, the calculatedSpend
drops to zero until Amazon Web Services
* has new usage data to use for forecasting.
Only one of
* BudgetLimit
or PlannedBudgetLimits
can be present in
* the syntax at one time. Use the syntax that matches your case. The Request
* Syntax section shows the BudgetLimit
syntax. For
* PlannedBudgetLimits
, see the Examples
* section.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateBudgetOutcome UpdateBudget(const Model::UpdateBudgetRequest& request) const;
/**
* A Callable wrapper for UpdateBudget that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateBudgetOutcomeCallable UpdateBudgetCallable(const UpdateBudgetRequestT& request) const
{
return SubmitCallable(&BudgetsClient::UpdateBudget, request);
}
/**
* An Async wrapper for UpdateBudget that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateBudgetAsync(const UpdateBudgetRequestT& request, const UpdateBudgetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::UpdateBudget, request, handler, context);
}
/**
* Updates a budget action.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateBudgetActionOutcome UpdateBudgetAction(const Model::UpdateBudgetActionRequest& request) const;
/**
* A Callable wrapper for UpdateBudgetAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateBudgetActionOutcomeCallable UpdateBudgetActionCallable(const UpdateBudgetActionRequestT& request) const
{
return SubmitCallable(&BudgetsClient::UpdateBudgetAction, request);
}
/**
* An Async wrapper for UpdateBudgetAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateBudgetActionAsync(const UpdateBudgetActionRequestT& request, const UpdateBudgetActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::UpdateBudgetAction, request, handler, context);
}
/**
* Updates a notification.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateNotificationOutcome UpdateNotification(const Model::UpdateNotificationRequest& request) const;
/**
* A Callable wrapper for UpdateNotification that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateNotificationOutcomeCallable UpdateNotificationCallable(const UpdateNotificationRequestT& request) const
{
return SubmitCallable(&BudgetsClient::UpdateNotification, request);
}
/**
* An Async wrapper for UpdateNotification that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateNotificationAsync(const UpdateNotificationRequestT& request, const UpdateNotificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::UpdateNotification, request, handler, context);
}
/**
* Updates a subscriber.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateSubscriberOutcome UpdateSubscriber(const Model::UpdateSubscriberRequest& request) const;
/**
* A Callable wrapper for UpdateSubscriber that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateSubscriberOutcomeCallable UpdateSubscriberCallable(const UpdateSubscriberRequestT& request) const
{
return SubmitCallable(&BudgetsClient::UpdateSubscriber, request);
}
/**
* An Async wrapper for UpdateSubscriber that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateSubscriberAsync(const UpdateSubscriberRequestT& request, const UpdateSubscriberResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&BudgetsClient::UpdateSubscriber, request, handler, context);
}
void OverrideEndpoint(const Aws::String& endpoint);
std::shared_ptr& accessEndpointProvider();
private:
friend class Aws::Client::ClientWithAsyncTemplateMethods;
void init(const BudgetsClientConfiguration& clientConfiguration);
BudgetsClientConfiguration m_clientConfiguration;
std::shared_ptr m_executor;
std::shared_ptr m_endpointProvider;
};
} // namespace Budgets
} // namespace Aws