AWS SDK for C++

AWS SDK for C++ Version 1.11.887

Loading...
Searching...
No Matches
CreateRuleRequest.h
1
6#pragma once
7#include <aws/connect/ConnectRequest.h>
8#include <aws/connect/Connect_EXPORTS.h>
9#include <aws/connect/model/PreEvaluationFilters.h>
10#include <aws/connect/model/RuleAction.h>
11#include <aws/connect/model/RulePublishStatus.h>
12#include <aws/connect/model/RuleTriggerEventSource.h>
13#include <aws/core/utils/UUID.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
16#include <aws/core/utils/memory/stl/AWSVector.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Connect {
22namespace Model {
23
27 public:
28 AWS_CONNECT_API CreateRuleRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateRule"; }
35
36 AWS_CONNECT_API Aws::String SerializePayload() const override;
37
39
44 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
45 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
46 template <typename InstanceIdT = Aws::String>
47 void SetInstanceId(InstanceIdT&& value) {
48 m_instanceIdHasBeenSet = true;
49 m_instanceId = std::forward<InstanceIdT>(value);
50 }
51 template <typename InstanceIdT = Aws::String>
52 CreateRuleRequest& WithInstanceId(InstanceIdT&& value) {
53 SetInstanceId(std::forward<InstanceIdT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetName() const { return m_name; }
63 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
64 template <typename NameT = Aws::String>
65 void SetName(NameT&& value) {
66 m_nameHasBeenSet = true;
67 m_name = std::forward<NameT>(value);
68 }
69 template <typename NameT = Aws::String>
70 CreateRuleRequest& WithName(NameT&& value) {
71 SetName(std::forward<NameT>(value));
72 return *this;
73 }
75
77
80 inline const RuleTriggerEventSource& GetTriggerEventSource() const { return m_triggerEventSource; }
81 inline bool TriggerEventSourceHasBeenSet() const { return m_triggerEventSourceHasBeenSet; }
82 template <typename TriggerEventSourceT = RuleTriggerEventSource>
83 void SetTriggerEventSource(TriggerEventSourceT&& value) {
84 m_triggerEventSourceHasBeenSet = true;
85 m_triggerEventSource = std::forward<TriggerEventSourceT>(value);
86 }
87 template <typename TriggerEventSourceT = RuleTriggerEventSource>
88 CreateRuleRequest& WithTriggerEventSource(TriggerEventSourceT&& value) {
89 SetTriggerEventSource(std::forward<TriggerEventSourceT>(value));
90 return *this;
91 }
93
95
98 inline const Aws::String& GetFunction() const { return m_function; }
99 inline bool FunctionHasBeenSet() const { return m_functionHasBeenSet; }
100 template <typename FunctionT = Aws::String>
101 void SetFunction(FunctionT&& value) {
102 m_functionHasBeenSet = true;
103 m_function = std::forward<FunctionT>(value);
104 }
105 template <typename FunctionT = Aws::String>
106 CreateRuleRequest& WithFunction(FunctionT&& value) {
107 SetFunction(std::forward<FunctionT>(value));
108 return *this;
109 }
111
113
116 inline const Aws::Vector<RuleAction>& GetActions() const { return m_actions; }
117 inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; }
118 template <typename ActionsT = Aws::Vector<RuleAction>>
119 void SetActions(ActionsT&& value) {
120 m_actionsHasBeenSet = true;
121 m_actions = std::forward<ActionsT>(value);
122 }
123 template <typename ActionsT = Aws::Vector<RuleAction>>
124 CreateRuleRequest& WithActions(ActionsT&& value) {
125 SetActions(std::forward<ActionsT>(value));
126 return *this;
127 }
128 template <typename ActionsT = RuleAction>
129 CreateRuleRequest& AddActions(ActionsT&& value) {
130 m_actionsHasBeenSet = true;
131 m_actions.emplace_back(std::forward<ActionsT>(value));
132 return *this;
133 }
135
137
140 inline RulePublishStatus GetPublishStatus() const { return m_publishStatus; }
141 inline bool PublishStatusHasBeenSet() const { return m_publishStatusHasBeenSet; }
143 m_publishStatusHasBeenSet = true;
144 m_publishStatus = value;
145 }
147 SetPublishStatus(value);
148 return *this;
149 }
151
153
160 inline const PreEvaluationFilters& GetPreEvaluationFilters() const { return m_preEvaluationFilters; }
161 inline bool PreEvaluationFiltersHasBeenSet() const { return m_preEvaluationFiltersHasBeenSet; }
162 template <typename PreEvaluationFiltersT = PreEvaluationFilters>
163 void SetPreEvaluationFilters(PreEvaluationFiltersT&& value) {
164 m_preEvaluationFiltersHasBeenSet = true;
165 m_preEvaluationFilters = std::forward<PreEvaluationFiltersT>(value);
166 }
167 template <typename PreEvaluationFiltersT = PreEvaluationFilters>
168 CreateRuleRequest& WithPreEvaluationFilters(PreEvaluationFiltersT&& value) {
169 SetPreEvaluationFilters(std::forward<PreEvaluationFiltersT>(value));
170 return *this;
171 }
173
175
182 inline const Aws::String& GetClientToken() const { return m_clientToken; }
183 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
184 template <typename ClientTokenT = Aws::String>
185 void SetClientToken(ClientTokenT&& value) {
186 m_clientTokenHasBeenSet = true;
187 m_clientToken = std::forward<ClientTokenT>(value);
188 }
189 template <typename ClientTokenT = Aws::String>
190 CreateRuleRequest& WithClientToken(ClientTokenT&& value) {
191 SetClientToken(std::forward<ClientTokenT>(value));
192 return *this;
193 }
195
197
201 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
202 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
203 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
204 void SetTags(TagsT&& value) {
205 m_tagsHasBeenSet = true;
206 m_tags = std::forward<TagsT>(value);
207 }
208 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
209 CreateRuleRequest& WithTags(TagsT&& value) {
210 SetTags(std::forward<TagsT>(value));
211 return *this;
212 }
213 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
214 CreateRuleRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
215 m_tagsHasBeenSet = true;
216 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
217 return *this;
218 }
220 private:
221 Aws::String m_instanceId;
222
223 Aws::String m_name;
224
225 RuleTriggerEventSource m_triggerEventSource;
226
227 Aws::String m_function;
228
229 Aws::Vector<RuleAction> m_actions;
230
232
233 PreEvaluationFilters m_preEvaluationFilters;
234
236
238 bool m_instanceIdHasBeenSet = false;
239 bool m_nameHasBeenSet = false;
240 bool m_triggerEventSourceHasBeenSet = false;
241 bool m_functionHasBeenSet = false;
242 bool m_actionsHasBeenSet = false;
243 bool m_publishStatusHasBeenSet = false;
244 bool m_preEvaluationFiltersHasBeenSet = false;
245 bool m_clientTokenHasBeenSet = true;
246 bool m_tagsHasBeenSet = false;
247};
248
249} // namespace Model
250} // namespace Connect
251} // namespace Aws
CreateRuleRequest & WithName(NameT &&value)
CreateRuleRequest & WithTags(TagsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetInstanceId(InstanceIdT &&value)
CreateRuleRequest & AddActions(ActionsT &&value)
CreateRuleRequest & WithInstanceId(InstanceIdT &&value)
const Aws::String & GetInstanceId() const
void SetClientToken(ClientTokenT &&value)
const Aws::String & GetFunction() const
CreateRuleRequest & WithClientToken(ClientTokenT &&value)
CreateRuleRequest & WithActions(ActionsT &&value)
RulePublishStatus GetPublishStatus() const
const Aws::String & GetName() const
const Aws::Vector< RuleAction > & GetActions() const
const PreEvaluationFilters & GetPreEvaluationFilters() const
CreateRuleRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateRuleRequest & WithTriggerEventSource(TriggerEventSourceT &&value)
AWS_CONNECT_API Aws::String SerializePayload() const override
virtual const char * GetServiceRequestName() const override
AWS_CONNECT_API CreateRuleRequest()=default
const RuleTriggerEventSource & GetTriggerEventSource() const
const Aws::String & GetClientToken() const
void SetTriggerEventSource(TriggerEventSourceT &&value)
CreateRuleRequest & WithFunction(FunctionT &&value)
CreateRuleRequest & WithPreEvaluationFilters(PreEvaluationFiltersT &&value)
void SetPreEvaluationFilters(PreEvaluationFiltersT &&value)
void SetPublishStatus(RulePublishStatus value)
CreateRuleRequest & WithPublishStatus(RulePublishStatus value)
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector