AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateBudgetActionRequest.h
1
6#pragma once
7#include <aws/budgets/Budgets_EXPORTS.h>
8#include <aws/budgets/BudgetsRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/budgets/model/NotificationType.h>
11#include <aws/budgets/model/ActionType.h>
12#include <aws/budgets/model/ActionThreshold.h>
13#include <aws/budgets/model/Definition.h>
14#include <aws/budgets/model/ApprovalModel.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
16#include <aws/budgets/model/Subscriber.h>
17#include <aws/budgets/model/ResourceTag.h>
18#include <utility>
19
20namespace Aws
21{
22namespace Budgets
23{
24namespace Model
25{
26
30 {
31 public:
32 AWS_BUDGETS_API CreateBudgetActionRequest() = default;
33
34 // Service request name is the Operation name which will send this request out,
35 // each operation should has unique request name, so that we can get operation's name from this request.
36 // Note: this is not true for response, multiple operations may have the same response name,
37 // so we can not get operation's name from response.
38 inline virtual const char* GetServiceRequestName() const override { return "CreateBudgetAction"; }
39
40 AWS_BUDGETS_API Aws::String SerializePayload() const override;
41
43
44
46
47 inline const Aws::String& GetAccountId() const { return m_accountId; }
48 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
49 template<typename AccountIdT = Aws::String>
50 void SetAccountId(AccountIdT&& value) { m_accountIdHasBeenSet = true; m_accountId = std::forward<AccountIdT>(value); }
51 template<typename AccountIdT = Aws::String>
52 CreateBudgetActionRequest& WithAccountId(AccountIdT&& value) { SetAccountId(std::forward<AccountIdT>(value)); return *this;}
54
56
57 inline const Aws::String& GetBudgetName() const { return m_budgetName; }
58 inline bool BudgetNameHasBeenSet() const { return m_budgetNameHasBeenSet; }
59 template<typename BudgetNameT = Aws::String>
60 void SetBudgetName(BudgetNameT&& value) { m_budgetNameHasBeenSet = true; m_budgetName = std::forward<BudgetNameT>(value); }
61 template<typename BudgetNameT = Aws::String>
62 CreateBudgetActionRequest& WithBudgetName(BudgetNameT&& value) { SetBudgetName(std::forward<BudgetNameT>(value)); return *this;}
64
66
67 inline NotificationType GetNotificationType() const { return m_notificationType; }
68 inline bool NotificationTypeHasBeenSet() const { return m_notificationTypeHasBeenSet; }
69 inline void SetNotificationType(NotificationType value) { m_notificationTypeHasBeenSet = true; m_notificationType = value; }
72
74
78 inline ActionType GetActionType() const { return m_actionType; }
79 inline bool ActionTypeHasBeenSet() const { return m_actionTypeHasBeenSet; }
80 inline void SetActionType(ActionType value) { m_actionTypeHasBeenSet = true; m_actionType = value; }
81 inline CreateBudgetActionRequest& WithActionType(ActionType value) { SetActionType(value); return *this;}
83
85
86 inline const ActionThreshold& GetActionThreshold() const { return m_actionThreshold; }
87 inline bool ActionThresholdHasBeenSet() const { return m_actionThresholdHasBeenSet; }
88 template<typename ActionThresholdT = ActionThreshold>
89 void SetActionThreshold(ActionThresholdT&& value) { m_actionThresholdHasBeenSet = true; m_actionThreshold = std::forward<ActionThresholdT>(value); }
90 template<typename ActionThresholdT = ActionThreshold>
91 CreateBudgetActionRequest& WithActionThreshold(ActionThresholdT&& value) { SetActionThreshold(std::forward<ActionThresholdT>(value)); return *this;}
93
95
96 inline const Definition& GetDefinition() const { return m_definition; }
97 inline bool DefinitionHasBeenSet() const { return m_definitionHasBeenSet; }
98 template<typename DefinitionT = Definition>
99 void SetDefinition(DefinitionT&& value) { m_definitionHasBeenSet = true; m_definition = std::forward<DefinitionT>(value); }
100 template<typename DefinitionT = Definition>
101 CreateBudgetActionRequest& WithDefinition(DefinitionT&& value) { SetDefinition(std::forward<DefinitionT>(value)); return *this;}
103
105
109 inline const Aws::String& GetExecutionRoleArn() const { return m_executionRoleArn; }
110 inline bool ExecutionRoleArnHasBeenSet() const { return m_executionRoleArnHasBeenSet; }
111 template<typename ExecutionRoleArnT = Aws::String>
112 void SetExecutionRoleArn(ExecutionRoleArnT&& value) { m_executionRoleArnHasBeenSet = true; m_executionRoleArn = std::forward<ExecutionRoleArnT>(value); }
113 template<typename ExecutionRoleArnT = Aws::String>
114 CreateBudgetActionRequest& WithExecutionRoleArn(ExecutionRoleArnT&& value) { SetExecutionRoleArn(std::forward<ExecutionRoleArnT>(value)); return *this;}
116
118
121 inline ApprovalModel GetApprovalModel() const { return m_approvalModel; }
122 inline bool ApprovalModelHasBeenSet() const { return m_approvalModelHasBeenSet; }
123 inline void SetApprovalModel(ApprovalModel value) { m_approvalModelHasBeenSet = true; m_approvalModel = value; }
126
128
129 inline const Aws::Vector<Subscriber>& GetSubscribers() const { return m_subscribers; }
130 inline bool SubscribersHasBeenSet() const { return m_subscribersHasBeenSet; }
131 template<typename SubscribersT = Aws::Vector<Subscriber>>
132 void SetSubscribers(SubscribersT&& value) { m_subscribersHasBeenSet = true; m_subscribers = std::forward<SubscribersT>(value); }
133 template<typename SubscribersT = Aws::Vector<Subscriber>>
134 CreateBudgetActionRequest& WithSubscribers(SubscribersT&& value) { SetSubscribers(std::forward<SubscribersT>(value)); return *this;}
135 template<typename SubscribersT = Subscriber>
136 CreateBudgetActionRequest& AddSubscribers(SubscribersT&& value) { m_subscribersHasBeenSet = true; m_subscribers.emplace_back(std::forward<SubscribersT>(value)); return *this; }
138
140
145 inline const Aws::Vector<ResourceTag>& GetResourceTags() const { return m_resourceTags; }
146 inline bool ResourceTagsHasBeenSet() const { return m_resourceTagsHasBeenSet; }
147 template<typename ResourceTagsT = Aws::Vector<ResourceTag>>
148 void SetResourceTags(ResourceTagsT&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags = std::forward<ResourceTagsT>(value); }
149 template<typename ResourceTagsT = Aws::Vector<ResourceTag>>
150 CreateBudgetActionRequest& WithResourceTags(ResourceTagsT&& value) { SetResourceTags(std::forward<ResourceTagsT>(value)); return *this;}
151 template<typename ResourceTagsT = ResourceTag>
152 CreateBudgetActionRequest& AddResourceTags(ResourceTagsT&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace_back(std::forward<ResourceTagsT>(value)); return *this; }
154 private:
155
156 Aws::String m_accountId;
157 bool m_accountIdHasBeenSet = false;
158
159 Aws::String m_budgetName;
160 bool m_budgetNameHasBeenSet = false;
161
163 bool m_notificationTypeHasBeenSet = false;
164
165 ActionType m_actionType{ActionType::NOT_SET};
166 bool m_actionTypeHasBeenSet = false;
167
168 ActionThreshold m_actionThreshold;
169 bool m_actionThresholdHasBeenSet = false;
170
171 Definition m_definition;
172 bool m_definitionHasBeenSet = false;
173
174 Aws::String m_executionRoleArn;
175 bool m_executionRoleArnHasBeenSet = false;
176
177 ApprovalModel m_approvalModel{ApprovalModel::NOT_SET};
178 bool m_approvalModelHasBeenSet = false;
179
180 Aws::Vector<Subscriber> m_subscribers;
181 bool m_subscribersHasBeenSet = false;
182
183 Aws::Vector<ResourceTag> m_resourceTags;
184 bool m_resourceTagsHasBeenSet = false;
185 };
186
187} // namespace Model
188} // namespace Budgets
189} // namespace Aws
AWS_BUDGETS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateBudgetActionRequest & WithSubscribers(SubscribersT &&value)
CreateBudgetActionRequest & WithResourceTags(ResourceTagsT &&value)
const Aws::Vector< ResourceTag > & GetResourceTags() const
CreateBudgetActionRequest & WithActionThreshold(ActionThresholdT &&value)
CreateBudgetActionRequest & AddSubscribers(SubscribersT &&value)
CreateBudgetActionRequest & WithDefinition(DefinitionT &&value)
CreateBudgetActionRequest & WithAccountId(AccountIdT &&value)
CreateBudgetActionRequest & WithActionType(ActionType value)
virtual const char * GetServiceRequestName() const override
AWS_BUDGETS_API Aws::String SerializePayload() const override
CreateBudgetActionRequest & WithNotificationType(NotificationType value)
AWS_BUDGETS_API CreateBudgetActionRequest()=default
CreateBudgetActionRequest & WithBudgetName(BudgetNameT &&value)
CreateBudgetActionRequest & WithApprovalModel(ApprovalModel value)
const Aws::Vector< Subscriber > & GetSubscribers() const
CreateBudgetActionRequest & AddResourceTags(ResourceTagsT &&value)
CreateBudgetActionRequest & WithExecutionRoleArn(ExecutionRoleArnT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector