7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/PreEvaluationFilters.h>
9#include <aws/connect/model/RuleAction.h>
10#include <aws/connect/model/RuleCapabilityTier.h>
11#include <aws/connect/model/RulePublishStatus.h>
12#include <aws/connect/model/RuleTriggerEventSource.h>
13#include <aws/core/utils/DateTime.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>
37 AWS_CONNECT_API
Rule() =
default;
48 template <
typename NameT = Aws::String>
50 m_nameHasBeenSet =
true;
51 m_name = std::forward<NameT>(value);
53 template <
typename NameT = Aws::String>
55 SetName(std::forward<NameT>(value));
66 template <
typename RuleIdT = Aws::String>
68 m_ruleIdHasBeenSet =
true;
69 m_ruleId = std::forward<RuleIdT>(value);
71 template <
typename RuleIdT = Aws::String>
84 template <
typename RuleArnT = Aws::String>
86 m_ruleArnHasBeenSet =
true;
87 m_ruleArn = std::forward<RuleArnT>(value);
89 template <
typename RuleArnT = Aws::String>
102 template <
typename TriggerEventSourceT = RuleTriggerEventSource>
104 m_triggerEventSourceHasBeenSet =
true;
105 m_triggerEventSource = std::forward<TriggerEventSourceT>(value);
107 template <
typename TriggerEventSourceT = RuleTriggerEventSource>
121 template <
typename RuleCapabilityTiersT = Aws::Vector<RuleCapabilityTier>>
123 m_ruleCapabilityTiersHasBeenSet =
true;
124 m_ruleCapabilityTiers = std::forward<RuleCapabilityTiersT>(value);
126 template <
typename RuleCapabilityTiersT = Aws::Vector<RuleCapabilityTier>>
132 m_ruleCapabilityTiersHasBeenSet =
true;
133 m_ruleCapabilityTiers.push_back(value);
144 template <
typename FunctionT = Aws::String>
146 m_functionHasBeenSet =
true;
147 m_function = std::forward<FunctionT>(value);
149 template <
typename FunctionT = Aws::String>
162 template <
typename ActionsT = Aws::Vector<RuleAction>>
164 m_actionsHasBeenSet =
true;
165 m_actions = std::forward<ActionsT>(value);
167 template <
typename ActionsT = Aws::Vector<RuleAction>>
172 template <
typename ActionsT = RuleAction>
174 m_actionsHasBeenSet =
true;
175 m_actions.emplace_back(std::forward<ActionsT>(value));
187 m_publishStatusHasBeenSet =
true;
188 m_publishStatus = value;
206 template <
typename PreEvaluationFiltersT = PreEvaluationFilters>
208 m_preEvaluationFiltersHasBeenSet =
true;
209 m_preEvaluationFilters = std::forward<PreEvaluationFiltersT>(value);
211 template <
typename PreEvaluationFiltersT = PreEvaluationFilters>
224 template <
typename CreatedTimeT = Aws::Utils::DateTime>
226 m_createdTimeHasBeenSet =
true;
227 m_createdTime = std::forward<CreatedTimeT>(value);
229 template <
typename CreatedTimeT = Aws::Utils::DateTime>
242 template <
typename LastUpdatedTimeT = Aws::Utils::DateTime>
244 m_lastUpdatedTimeHasBeenSet =
true;
245 m_lastUpdatedTime = std::forward<LastUpdatedTimeT>(value);
247 template <
typename LastUpdatedTimeT = Aws::Utils::DateTime>
260 template <
typename LastUpdatedByT = Aws::String>
262 m_lastUpdatedByHasBeenSet =
true;
263 m_lastUpdatedBy = std::forward<LastUpdatedByT>(value);
265 template <
typename LastUpdatedByT = Aws::String>
279 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
281 m_tagsHasBeenSet =
true;
282 m_tags = std::forward<TagsT>(value);
284 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
286 SetTags(std::forward<TagsT>(value));
289 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
291 m_tagsHasBeenSet =
true;
292 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
313 PreEvaluationFilters m_preEvaluationFilters;
322 bool m_nameHasBeenSet =
false;
323 bool m_ruleIdHasBeenSet =
false;
324 bool m_ruleArnHasBeenSet =
false;
325 bool m_triggerEventSourceHasBeenSet =
false;
326 bool m_ruleCapabilityTiersHasBeenSet =
false;
327 bool m_functionHasBeenSet =
false;
328 bool m_actionsHasBeenSet =
false;
329 bool m_publishStatusHasBeenSet =
false;
330 bool m_preEvaluationFiltersHasBeenSet =
false;
331 bool m_createdTimeHasBeenSet =
false;
332 bool m_lastUpdatedTimeHasBeenSet =
false;
333 bool m_lastUpdatedByHasBeenSet =
false;
334 bool m_tagsHasBeenSet =
false;
Rule & WithLastUpdatedTime(LastUpdatedTimeT &&value)
Rule & WithName(NameT &&value)
Rule & WithRuleId(RuleIdT &&value)
RulePublishStatus GetPublishStatus() const
void SetFunction(FunctionT &&value)
Rule & AddRuleCapabilityTiers(RuleCapabilityTier value)
const Aws::Vector< RuleAction > & GetActions() const
bool PublishStatusHasBeenSet() const
Rule & WithRuleArn(RuleArnT &&value)
bool TriggerEventSourceHasBeenSet() const
bool CreatedTimeHasBeenSet() const
const Aws::String & GetFunction() const
bool FunctionHasBeenSet() const
Rule & WithRuleCapabilityTiers(RuleCapabilityTiersT &&value)
Rule & WithLastUpdatedBy(LastUpdatedByT &&value)
Rule & WithFunction(FunctionT &&value)
void SetTags(TagsT &&value)
bool RuleCapabilityTiersHasBeenSet() const
const RuleTriggerEventSource & GetTriggerEventSource() const
void SetPreEvaluationFilters(PreEvaluationFiltersT &&value)
bool PreEvaluationFiltersHasBeenSet() const
Rule & WithPreEvaluationFilters(PreEvaluationFiltersT &&value)
const Aws::Utils::DateTime & GetCreatedTime() const
bool NameHasBeenSet() const
bool TagsHasBeenSet() const
void SetLastUpdatedBy(LastUpdatedByT &&value)
Rule & WithActions(ActionsT &&value)
AWS_CONNECT_API Rule(Aws::Utils::Json::JsonView jsonValue)
void SetCreatedTime(CreatedTimeT &&value)
void SetTriggerEventSource(TriggerEventSourceT &&value)
void SetLastUpdatedTime(LastUpdatedTimeT &&value)
void SetActions(ActionsT &&value)
Rule & AddActions(ActionsT &&value)
Rule & WithCreatedTime(CreatedTimeT &&value)
bool LastUpdatedTimeHasBeenSet() const
bool LastUpdatedByHasBeenSet() const
const Aws::String & GetLastUpdatedBy() const
AWS_CONNECT_API Rule()=default
Rule & WithTags(TagsT &&value)
const Aws::String & GetRuleArn() const
const Aws::Vector< RuleCapabilityTier > & GetRuleCapabilityTiers() const
Rule & WithTriggerEventSource(TriggerEventSourceT &&value)
void SetName(NameT &&value)
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetRuleCapabilityTiers(RuleCapabilityTiersT &&value)
void SetPublishStatus(RulePublishStatus value)
const Aws::Utils::DateTime & GetLastUpdatedTime() const
void SetRuleId(RuleIdT &&value)
Rule & WithPublishStatus(RulePublishStatus value)
const PreEvaluationFilters & GetPreEvaluationFilters() const
void SetRuleArn(RuleArnT &&value)
Rule & AddTags(TagsKeyT &&key, TagsValueT &&value)
bool ActionsHasBeenSet() const
AWS_CONNECT_API Rule & operator=(Aws::Utils::Json::JsonView jsonValue)
bool RuleIdHasBeenSet() const
const Aws::String & GetRuleId() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
bool RuleArnHasBeenSet() const
const Aws::String & GetName() const
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
Aws::Utils::Json::JsonValue JsonValue