AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
RoutingRule.h
1
6#pragma once
7#include <aws/apigatewayv2/ApiGatewayV2_EXPORTS.h>
8#include <aws/apigatewayv2/model/RoutingRuleAction.h>
9#include <aws/apigatewayv2/model/RoutingRuleCondition.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace ApiGatewayV2 {
23namespace Model {
24
31 public:
32 AWS_APIGATEWAYV2_API RoutingRule() = default;
33 AWS_APIGATEWAYV2_API RoutingRule(Aws::Utils::Json::JsonView jsonValue);
34 AWS_APIGATEWAYV2_API RoutingRule& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_APIGATEWAYV2_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::Vector<RoutingRuleAction>& GetActions() const { return m_actions; }
42 inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; }
43 template <typename ActionsT = Aws::Vector<RoutingRuleAction>>
44 void SetActions(ActionsT&& value) {
45 m_actionsHasBeenSet = true;
46 m_actions = std::forward<ActionsT>(value);
47 }
48 template <typename ActionsT = Aws::Vector<RoutingRuleAction>>
49 RoutingRule& WithActions(ActionsT&& value) {
50 SetActions(std::forward<ActionsT>(value));
51 return *this;
52 }
53 template <typename ActionsT = RoutingRuleAction>
54 RoutingRule& AddActions(ActionsT&& value) {
55 m_actionsHasBeenSet = true;
56 m_actions.emplace_back(std::forward<ActionsT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::Vector<RoutingRuleCondition>& GetConditions() const { return m_conditions; }
66 inline bool ConditionsHasBeenSet() const { return m_conditionsHasBeenSet; }
67 template <typename ConditionsT = Aws::Vector<RoutingRuleCondition>>
68 void SetConditions(ConditionsT&& value) {
69 m_conditionsHasBeenSet = true;
70 m_conditions = std::forward<ConditionsT>(value);
71 }
72 template <typename ConditionsT = Aws::Vector<RoutingRuleCondition>>
73 RoutingRule& WithConditions(ConditionsT&& value) {
74 SetConditions(std::forward<ConditionsT>(value));
75 return *this;
76 }
77 template <typename ConditionsT = RoutingRuleCondition>
78 RoutingRule& AddConditions(ConditionsT&& value) {
79 m_conditionsHasBeenSet = true;
80 m_conditions.emplace_back(std::forward<ConditionsT>(value));
81 return *this;
82 }
84
86
89 inline int GetPriority() const { return m_priority; }
90 inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; }
91 inline void SetPriority(int value) {
92 m_priorityHasBeenSet = true;
93 m_priority = value;
94 }
95 inline RoutingRule& WithPriority(int value) {
96 SetPriority(value);
97 return *this;
98 }
100
102
105 inline const Aws::String& GetRoutingRuleArn() const { return m_routingRuleArn; }
106 inline bool RoutingRuleArnHasBeenSet() const { return m_routingRuleArnHasBeenSet; }
107 template <typename RoutingRuleArnT = Aws::String>
108 void SetRoutingRuleArn(RoutingRuleArnT&& value) {
109 m_routingRuleArnHasBeenSet = true;
110 m_routingRuleArn = std::forward<RoutingRuleArnT>(value);
111 }
112 template <typename RoutingRuleArnT = Aws::String>
113 RoutingRule& WithRoutingRuleArn(RoutingRuleArnT&& value) {
114 SetRoutingRuleArn(std::forward<RoutingRuleArnT>(value));
115 return *this;
116 }
118
120
123 inline const Aws::String& GetRoutingRuleId() const { return m_routingRuleId; }
124 inline bool RoutingRuleIdHasBeenSet() const { return m_routingRuleIdHasBeenSet; }
125 template <typename RoutingRuleIdT = Aws::String>
126 void SetRoutingRuleId(RoutingRuleIdT&& value) {
127 m_routingRuleIdHasBeenSet = true;
128 m_routingRuleId = std::forward<RoutingRuleIdT>(value);
129 }
130 template <typename RoutingRuleIdT = Aws::String>
131 RoutingRule& WithRoutingRuleId(RoutingRuleIdT&& value) {
132 SetRoutingRuleId(std::forward<RoutingRuleIdT>(value));
133 return *this;
134 }
136 private:
138
140
141 int m_priority{0};
142
143 Aws::String m_routingRuleArn;
144
145 Aws::String m_routingRuleId;
146 bool m_actionsHasBeenSet = false;
147 bool m_conditionsHasBeenSet = false;
148 bool m_priorityHasBeenSet = false;
149 bool m_routingRuleArnHasBeenSet = false;
150 bool m_routingRuleIdHasBeenSet = false;
151};
152
153} // namespace Model
154} // namespace ApiGatewayV2
155} // namespace Aws
RoutingRule & WithActions(ActionsT &&value)
Definition RoutingRule.h:49
const Aws::Vector< RoutingRuleCondition > & GetConditions() const
Definition RoutingRule.h:65
void SetRoutingRuleId(RoutingRuleIdT &&value)
RoutingRule & WithRoutingRuleId(RoutingRuleIdT &&value)
AWS_APIGATEWAYV2_API RoutingRule & operator=(Aws::Utils::Json::JsonView jsonValue)
RoutingRule & AddActions(ActionsT &&value)
Definition RoutingRule.h:54
AWS_APIGATEWAYV2_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetRoutingRuleId() const
AWS_APIGATEWAYV2_API RoutingRule()=default
const Aws::Vector< RoutingRuleAction > & GetActions() const
Definition RoutingRule.h:41
RoutingRule & WithPriority(int value)
Definition RoutingRule.h:95
RoutingRule & AddConditions(ConditionsT &&value)
Definition RoutingRule.h:78
void SetRoutingRuleArn(RoutingRuleArnT &&value)
const Aws::String & GetRoutingRuleArn() const
AWS_APIGATEWAYV2_API RoutingRule(Aws::Utils::Json::JsonView jsonValue)
RoutingRule & WithConditions(ConditionsT &&value)
Definition RoutingRule.h:73
RoutingRule & WithRoutingRuleArn(RoutingRuleArnT &&value)
void SetConditions(ConditionsT &&value)
Definition RoutingRule.h:68
void SetActions(ActionsT &&value)
Definition RoutingRule.h:44
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue