7#include <aws/mailmanager/MailManager_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/mailmanager/model/RuleCondition.h>
11#include <aws/mailmanager/model/RuleAction.h>
43 AWS_MAILMANAGER_API
Rule() =
default;
55 template<
typename NameT = Aws::String>
56 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
57 template<
typename NameT = Aws::String>
69 template<
typename ConditionsT = Aws::Vector<RuleCondition>>
70 void SetConditions(ConditionsT&& value) { m_conditionsHasBeenSet =
true; m_conditions = std::forward<ConditionsT>(value); }
71 template<
typename ConditionsT = Aws::Vector<RuleCondition>>
73 template<
typename ConditionsT = RuleCondition>
74 Rule&
AddConditions(ConditionsT&& value) { m_conditionsHasBeenSet =
true; m_conditions.emplace_back(std::forward<ConditionsT>(value));
return *
this; }
85 template<
typename UnlessT = Aws::Vector<RuleCondition>>
86 void SetUnless(UnlessT&& value) { m_unlessHasBeenSet =
true; m_unless = std::forward<UnlessT>(value); }
87 template<
typename UnlessT = Aws::Vector<RuleCondition>>
89 template<
typename UnlessT = RuleCondition>
90 Rule&
AddUnless(UnlessT&& value) { m_unlessHasBeenSet =
true; m_unless.emplace_back(std::forward<UnlessT>(value));
return *
this; }
100 template<
typename ActionsT = Aws::Vector<RuleAction>>
101 void SetActions(ActionsT&& value) { m_actionsHasBeenSet =
true; m_actions = std::forward<ActionsT>(value); }
102 template<
typename ActionsT = Aws::Vector<RuleAction>>
104 template<
typename ActionsT = RuleAction>
105 Rule&
AddActions(ActionsT&& value) { m_actionsHasBeenSet =
true; m_actions.emplace_back(std::forward<ActionsT>(value));
return *
this; }
110 bool m_nameHasBeenSet =
false;
113 bool m_conditionsHasBeenSet =
false;
116 bool m_unlessHasBeenSet =
false;
119 bool m_actionsHasBeenSet =
false;
Rule & WithConditions(ConditionsT &&value)
Rule & WithUnless(UnlessT &&value)
const Aws::Vector< RuleCondition > & GetConditions() const
const Aws::Vector< RuleAction > & GetActions() const
AWS_MAILMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetName() const
AWS_MAILMANAGER_API Rule(Aws::Utils::Json::JsonView jsonValue)
void SetUnless(UnlessT &&value)
void SetName(NameT &&value)
Rule & AddConditions(ConditionsT &&value)
Rule & AddUnless(UnlessT &&value)
const Aws::Vector< RuleCondition > & GetUnless() const
void SetActions(ActionsT &&value)
bool ActionsHasBeenSet() const
AWS_MAILMANAGER_API Rule & operator=(Aws::Utils::Json::JsonView jsonValue)
Rule & WithActions(ActionsT &&value)
Rule & AddActions(ActionsT &&value)
bool NameHasBeenSet() const
bool ConditionsHasBeenSet() const
AWS_MAILMANAGER_API Rule()=default
bool UnlessHasBeenSet() const
Rule & WithName(NameT &&value)
void SetConditions(ConditionsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue