7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/elasticloadbalancingv2/ElasticLoadBalancingv2_EXPORTS.h>
11#include <aws/elasticloadbalancingv2/model/Action.h>
12#include <aws/elasticloadbalancingv2/model/RuleCondition.h>
13#include <aws/elasticloadbalancingv2/model/RuleTransform.h>
23namespace ElasticLoadBalancingv2 {
33 AWS_ELASTICLOADBALANCINGV2_API
Rule() =
default;
38 const char* locationValue)
const;
47 template <
typename RuleArnT = Aws::String>
49 m_ruleArnHasBeenSet =
true;
50 m_ruleArn = std::forward<RuleArnT>(value);
52 template <
typename RuleArnT = Aws::String>
65 template <
typename PriorityT = Aws::String>
67 m_priorityHasBeenSet =
true;
68 m_priority = std::forward<PriorityT>(value);
70 template <
typename PriorityT = Aws::String>
87 template <
typename ConditionsT = Aws::Vector<RuleCondition>>
89 m_conditionsHasBeenSet =
true;
90 m_conditions = std::forward<ConditionsT>(value);
92 template <
typename ConditionsT = Aws::Vector<RuleCondition>>
97 template <
typename ConditionsT = RuleCondition>
99 m_conditionsHasBeenSet =
true;
100 m_conditions.emplace_back(std::forward<ConditionsT>(value));
113 template <
typename ActionsT = Aws::Vector<Action>>
115 m_actionsHasBeenSet =
true;
116 m_actions = std::forward<ActionsT>(value);
118 template <
typename ActionsT = Aws::Vector<Action>>
123 template <
typename ActionsT = Action>
125 m_actionsHasBeenSet =
true;
126 m_actions.emplace_back(std::forward<ActionsT>(value));
138 m_isDefaultHasBeenSet =
true;
153 template <
typename TransformsT = Aws::Vector<RuleTransform>>
155 m_transformsHasBeenSet =
true;
156 m_transforms = std::forward<TransformsT>(value);
158 template <
typename TransformsT = Aws::Vector<RuleTransform>>
163 template <
typename TransformsT = RuleTransform>
165 m_transformsHasBeenSet =
true;
166 m_transforms.emplace_back(std::forward<TransformsT>(value));
179 bool m_isDefault{
false};
182 bool m_ruleArnHasBeenSet =
false;
183 bool m_priorityHasBeenSet =
false;
184 bool m_conditionsHasBeenSet =
false;
185 bool m_actionsHasBeenSet =
false;
186 bool m_isDefaultHasBeenSet =
false;
187 bool m_transformsHasBeenSet =
false;
AWS_ELASTICLOADBALANCINGV2_API Rule(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetActions(ActionsT &&value)
AWS_ELASTICLOADBALANCINGV2_API Rule & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Rule & WithIsDefault(bool value)
Rule & AddConditions(ConditionsT &&value)
bool IsDefaultHasBeenSet() const
const Aws::Vector< RuleTransform > & GetTransforms() const
AWS_ELASTICLOADBALANCINGV2_API Rule()=default
Rule & AddActions(ActionsT &&value)
Rule & WithTransforms(TransformsT &&value)
void SetIsDefault(bool value)
bool RuleArnHasBeenSet() const
Rule & AddTransforms(TransformsT &&value)
Rule & WithRuleArn(RuleArnT &&value)
bool GetIsDefault() const
const Aws::Vector< Action > & GetActions() const
bool ConditionsHasBeenSet() const
const Aws::Vector< RuleCondition > & GetConditions() const
void SetRuleArn(RuleArnT &&value)
const Aws::String & GetRuleArn() const
Rule & WithActions(ActionsT &&value)
bool TransformsHasBeenSet() const
void SetTransforms(TransformsT &&value)
bool ActionsHasBeenSet() const
void SetPriority(PriorityT &&value)
Rule & WithConditions(ConditionsT &&value)
void SetConditions(ConditionsT &&value)
Rule & WithPriority(PriorityT &&value)
const Aws::String & GetPriority() const
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
bool PriorityHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream