AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
Action.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/elasticloadbalancingv2/ElasticLoadBalancingv2_EXPORTS.h>
10#include <aws/elasticloadbalancingv2/model/ActionTypeEnum.h>
11#include <aws/elasticloadbalancingv2/model/AuthenticateCognitoActionConfig.h>
12#include <aws/elasticloadbalancingv2/model/AuthenticateOidcActionConfig.h>
13#include <aws/elasticloadbalancingv2/model/FixedResponseActionConfig.h>
14#include <aws/elasticloadbalancingv2/model/ForwardActionConfig.h>
15#include <aws/elasticloadbalancingv2/model/JwtValidationActionConfig.h>
16#include <aws/elasticloadbalancingv2/model/RedirectActionConfig.h>
17
18#include <utility>
19
20namespace Aws {
21namespace Utils {
22namespace Xml {
23class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace ElasticLoadBalancingv2 {
27namespace Model {
28
40class Action {
41 public:
42 AWS_ELASTICLOADBALANCINGV2_API Action() = default;
43 AWS_ELASTICLOADBALANCINGV2_API Action(const Aws::Utils::Xml::XmlNode& xmlNode);
44 AWS_ELASTICLOADBALANCINGV2_API Action& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
45
46 AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index,
47 const char* locationValue) const;
48 AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
49
51
54 inline ActionTypeEnum GetType() const { return m_type; }
55 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
56 inline void SetType(ActionTypeEnum value) {
57 m_typeHasBeenSet = true;
58 m_type = value;
59 }
61 SetType(value);
62 return *this;
63 }
65
67
73 inline const Aws::String& GetTargetGroupArn() const { return m_targetGroupArn; }
74 inline bool TargetGroupArnHasBeenSet() const { return m_targetGroupArnHasBeenSet; }
75 template <typename TargetGroupArnT = Aws::String>
76 void SetTargetGroupArn(TargetGroupArnT&& value) {
77 m_targetGroupArnHasBeenSet = true;
78 m_targetGroupArn = std::forward<TargetGroupArnT>(value);
79 }
80 template <typename TargetGroupArnT = Aws::String>
81 Action& WithTargetGroupArn(TargetGroupArnT&& value) {
82 SetTargetGroupArn(std::forward<TargetGroupArnT>(value));
83 return *this;
84 }
86
88
93 inline const AuthenticateOidcActionConfig& GetAuthenticateOidcConfig() const { return m_authenticateOidcConfig; }
94 inline bool AuthenticateOidcConfigHasBeenSet() const { return m_authenticateOidcConfigHasBeenSet; }
95 template <typename AuthenticateOidcConfigT = AuthenticateOidcActionConfig>
96 void SetAuthenticateOidcConfig(AuthenticateOidcConfigT&& value) {
97 m_authenticateOidcConfigHasBeenSet = true;
98 m_authenticateOidcConfig = std::forward<AuthenticateOidcConfigT>(value);
99 }
100 template <typename AuthenticateOidcConfigT = AuthenticateOidcActionConfig>
101 Action& WithAuthenticateOidcConfig(AuthenticateOidcConfigT&& value) {
102 SetAuthenticateOidcConfig(std::forward<AuthenticateOidcConfigT>(value));
103 return *this;
104 }
106
108
112 inline const AuthenticateCognitoActionConfig& GetAuthenticateCognitoConfig() const { return m_authenticateCognitoConfig; }
113 inline bool AuthenticateCognitoConfigHasBeenSet() const { return m_authenticateCognitoConfigHasBeenSet; }
114 template <typename AuthenticateCognitoConfigT = AuthenticateCognitoActionConfig>
115 void SetAuthenticateCognitoConfig(AuthenticateCognitoConfigT&& value) {
116 m_authenticateCognitoConfigHasBeenSet = true;
117 m_authenticateCognitoConfig = std::forward<AuthenticateCognitoConfigT>(value);
118 }
119 template <typename AuthenticateCognitoConfigT = AuthenticateCognitoActionConfig>
120 Action& WithAuthenticateCognitoConfig(AuthenticateCognitoConfigT&& value) {
121 SetAuthenticateCognitoConfig(std::forward<AuthenticateCognitoConfigT>(value));
122 return *this;
123 }
125
127
131 inline int GetOrder() const { return m_order; }
132 inline bool OrderHasBeenSet() const { return m_orderHasBeenSet; }
133 inline void SetOrder(int value) {
134 m_orderHasBeenSet = true;
135 m_order = value;
136 }
137 inline Action& WithOrder(int value) {
138 SetOrder(value);
139 return *this;
140 }
142
144
148 inline const RedirectActionConfig& GetRedirectConfig() const { return m_redirectConfig; }
149 inline bool RedirectConfigHasBeenSet() const { return m_redirectConfigHasBeenSet; }
150 template <typename RedirectConfigT = RedirectActionConfig>
151 void SetRedirectConfig(RedirectConfigT&& value) {
152 m_redirectConfigHasBeenSet = true;
153 m_redirectConfig = std::forward<RedirectConfigT>(value);
154 }
155 template <typename RedirectConfigT = RedirectActionConfig>
156 Action& WithRedirectConfig(RedirectConfigT&& value) {
157 SetRedirectConfig(std::forward<RedirectConfigT>(value));
158 return *this;
159 }
161
163
168 inline const FixedResponseActionConfig& GetFixedResponseConfig() const { return m_fixedResponseConfig; }
169 inline bool FixedResponseConfigHasBeenSet() const { return m_fixedResponseConfigHasBeenSet; }
170 template <typename FixedResponseConfigT = FixedResponseActionConfig>
171 void SetFixedResponseConfig(FixedResponseConfigT&& value) {
172 m_fixedResponseConfigHasBeenSet = true;
173 m_fixedResponseConfig = std::forward<FixedResponseConfigT>(value);
174 }
175 template <typename FixedResponseConfigT = FixedResponseActionConfig>
176 Action& WithFixedResponseConfig(FixedResponseConfigT&& value) {
177 SetFixedResponseConfig(std::forward<FixedResponseConfigT>(value));
178 return *this;
179 }
181
183
191 inline const ForwardActionConfig& GetForwardConfig() const { return m_forwardConfig; }
192 inline bool ForwardConfigHasBeenSet() const { return m_forwardConfigHasBeenSet; }
193 template <typename ForwardConfigT = ForwardActionConfig>
194 void SetForwardConfig(ForwardConfigT&& value) {
195 m_forwardConfigHasBeenSet = true;
196 m_forwardConfig = std::forward<ForwardConfigT>(value);
197 }
198 template <typename ForwardConfigT = ForwardActionConfig>
199 Action& WithForwardConfig(ForwardConfigT&& value) {
200 SetForwardConfig(std::forward<ForwardConfigT>(value));
201 return *this;
202 }
204
206
211 inline const JwtValidationActionConfig& GetJwtValidationConfig() const { return m_jwtValidationConfig; }
212 inline bool JwtValidationConfigHasBeenSet() const { return m_jwtValidationConfigHasBeenSet; }
213 template <typename JwtValidationConfigT = JwtValidationActionConfig>
214 void SetJwtValidationConfig(JwtValidationConfigT&& value) {
215 m_jwtValidationConfigHasBeenSet = true;
216 m_jwtValidationConfig = std::forward<JwtValidationConfigT>(value);
217 }
218 template <typename JwtValidationConfigT = JwtValidationActionConfig>
219 Action& WithJwtValidationConfig(JwtValidationConfigT&& value) {
220 SetJwtValidationConfig(std::forward<JwtValidationConfigT>(value));
221 return *this;
222 }
224 private:
226
227 Aws::String m_targetGroupArn;
228
229 AuthenticateOidcActionConfig m_authenticateOidcConfig;
230
231 AuthenticateCognitoActionConfig m_authenticateCognitoConfig;
232
233 int m_order{0};
234
235 RedirectActionConfig m_redirectConfig;
236
237 FixedResponseActionConfig m_fixedResponseConfig;
238
239 ForwardActionConfig m_forwardConfig;
240
241 JwtValidationActionConfig m_jwtValidationConfig;
242 bool m_typeHasBeenSet = false;
243 bool m_targetGroupArnHasBeenSet = false;
244 bool m_authenticateOidcConfigHasBeenSet = false;
245 bool m_authenticateCognitoConfigHasBeenSet = false;
246 bool m_orderHasBeenSet = false;
247 bool m_redirectConfigHasBeenSet = false;
248 bool m_fixedResponseConfigHasBeenSet = false;
249 bool m_forwardConfigHasBeenSet = false;
250 bool m_jwtValidationConfigHasBeenSet = false;
251};
252
253} // namespace Model
254} // namespace ElasticLoadBalancingv2
255} // namespace Aws
void SetType(ActionTypeEnum value)
Definition Action.h:56
void SetTargetGroupArn(TargetGroupArnT &&value)
Definition Action.h:76
void SetRedirectConfig(RedirectConfigT &&value)
Definition Action.h:151
Action & WithTargetGroupArn(TargetGroupArnT &&value)
Definition Action.h:81
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const AuthenticateOidcActionConfig & GetAuthenticateOidcConfig() const
Definition Action.h:93
AWS_ELASTICLOADBALANCINGV2_API Action()=default
void SetAuthenticateOidcConfig(AuthenticateOidcConfigT &&value)
Definition Action.h:96
Action & WithAuthenticateCognitoConfig(AuthenticateCognitoConfigT &&value)
Definition Action.h:120
AWS_ELASTICLOADBALANCINGV2_API Action & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetJwtValidationConfig(JwtValidationConfigT &&value)
Definition Action.h:214
Action & WithFixedResponseConfig(FixedResponseConfigT &&value)
Definition Action.h:176
void SetAuthenticateCognitoConfig(AuthenticateCognitoConfigT &&value)
Definition Action.h:115
const Aws::String & GetTargetGroupArn() const
Definition Action.h:73
Action & WithAuthenticateOidcConfig(AuthenticateOidcConfigT &&value)
Definition Action.h:101
const JwtValidationActionConfig & GetJwtValidationConfig() const
Definition Action.h:211
void SetForwardConfig(ForwardConfigT &&value)
Definition Action.h:194
Action & WithRedirectConfig(RedirectConfigT &&value)
Definition Action.h:156
const RedirectActionConfig & GetRedirectConfig() const
Definition Action.h:148
Action & WithForwardConfig(ForwardConfigT &&value)
Definition Action.h:199
const AuthenticateCognitoActionConfig & GetAuthenticateCognitoConfig() const
Definition Action.h:112
void SetFixedResponseConfig(FixedResponseConfigT &&value)
Definition Action.h:171
const ForwardActionConfig & GetForwardConfig() const
Definition Action.h:191
const FixedResponseActionConfig & GetFixedResponseConfig() const
Definition Action.h:168
Action & WithJwtValidationConfig(JwtValidationConfigT &&value)
Definition Action.h:219
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
Action & WithType(ActionTypeEnum value)
Definition Action.h:60
AWS_ELASTICLOADBALANCINGV2_API Action(const Aws::Utils::Xml::XmlNode &xmlNode)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream