AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
Action.h
1
6#pragma once
7#include <aws/elasticloadbalancingv2/ElasticLoadBalancingv2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/elasticloadbalancingv2/model/ActionTypeEnum.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/elasticloadbalancingv2/model/AuthenticateOidcActionConfig.h>
12#include <aws/elasticloadbalancingv2/model/AuthenticateCognitoActionConfig.h>
13#include <aws/elasticloadbalancingv2/model/RedirectActionConfig.h>
14#include <aws/elasticloadbalancingv2/model/FixedResponseActionConfig.h>
15#include <aws/elasticloadbalancingv2/model/ForwardActionConfig.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Xml
23{
24 class XmlNode;
25} // namespace Xml
26} // namespace Utils
27namespace ElasticLoadBalancingv2
28{
29namespace Model
30{
31
40 class Action
41 {
42 public:
43 AWS_ELASTICLOADBALANCINGV2_API Action() = default;
44 AWS_ELASTICLOADBALANCINGV2_API Action(const Aws::Utils::Xml::XmlNode& xmlNode);
45 AWS_ELASTICLOADBALANCINGV2_API Action& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
46
47 AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
48 AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
49
50
52
55 inline ActionTypeEnum GetType() const { return m_type; }
56 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
57 inline void SetType(ActionTypeEnum value) { m_typeHasBeenSet = true; m_type = value; }
58 inline Action& WithType(ActionTypeEnum value) { SetType(value); return *this;}
60
62
68 inline const Aws::String& GetTargetGroupArn() const { return m_targetGroupArn; }
69 inline bool TargetGroupArnHasBeenSet() const { return m_targetGroupArnHasBeenSet; }
70 template<typename TargetGroupArnT = Aws::String>
71 void SetTargetGroupArn(TargetGroupArnT&& value) { m_targetGroupArnHasBeenSet = true; m_targetGroupArn = std::forward<TargetGroupArnT>(value); }
72 template<typename TargetGroupArnT = Aws::String>
73 Action& WithTargetGroupArn(TargetGroupArnT&& value) { SetTargetGroupArn(std::forward<TargetGroupArnT>(value)); return *this;}
75
77
82 inline const AuthenticateOidcActionConfig& GetAuthenticateOidcConfig() const { return m_authenticateOidcConfig; }
83 inline bool AuthenticateOidcConfigHasBeenSet() const { return m_authenticateOidcConfigHasBeenSet; }
84 template<typename AuthenticateOidcConfigT = AuthenticateOidcActionConfig>
85 void SetAuthenticateOidcConfig(AuthenticateOidcConfigT&& value) { m_authenticateOidcConfigHasBeenSet = true; m_authenticateOidcConfig = std::forward<AuthenticateOidcConfigT>(value); }
86 template<typename AuthenticateOidcConfigT = AuthenticateOidcActionConfig>
87 Action& WithAuthenticateOidcConfig(AuthenticateOidcConfigT&& value) { SetAuthenticateOidcConfig(std::forward<AuthenticateOidcConfigT>(value)); return *this;}
89
91
95 inline const AuthenticateCognitoActionConfig& GetAuthenticateCognitoConfig() const { return m_authenticateCognitoConfig; }
96 inline bool AuthenticateCognitoConfigHasBeenSet() const { return m_authenticateCognitoConfigHasBeenSet; }
97 template<typename AuthenticateCognitoConfigT = AuthenticateCognitoActionConfig>
98 void SetAuthenticateCognitoConfig(AuthenticateCognitoConfigT&& value) { m_authenticateCognitoConfigHasBeenSet = true; m_authenticateCognitoConfig = std::forward<AuthenticateCognitoConfigT>(value); }
99 template<typename AuthenticateCognitoConfigT = AuthenticateCognitoActionConfig>
100 Action& WithAuthenticateCognitoConfig(AuthenticateCognitoConfigT&& value) { SetAuthenticateCognitoConfig(std::forward<AuthenticateCognitoConfigT>(value)); return *this;}
102
104
108 inline int GetOrder() const { return m_order; }
109 inline bool OrderHasBeenSet() const { return m_orderHasBeenSet; }
110 inline void SetOrder(int value) { m_orderHasBeenSet = true; m_order = value; }
111 inline Action& WithOrder(int value) { SetOrder(value); return *this;}
113
115
119 inline const RedirectActionConfig& GetRedirectConfig() const { return m_redirectConfig; }
120 inline bool RedirectConfigHasBeenSet() const { return m_redirectConfigHasBeenSet; }
121 template<typename RedirectConfigT = RedirectActionConfig>
122 void SetRedirectConfig(RedirectConfigT&& value) { m_redirectConfigHasBeenSet = true; m_redirectConfig = std::forward<RedirectConfigT>(value); }
123 template<typename RedirectConfigT = RedirectActionConfig>
124 Action& WithRedirectConfig(RedirectConfigT&& value) { SetRedirectConfig(std::forward<RedirectConfigT>(value)); return *this;}
126
128
133 inline const FixedResponseActionConfig& GetFixedResponseConfig() const { return m_fixedResponseConfig; }
134 inline bool FixedResponseConfigHasBeenSet() const { return m_fixedResponseConfigHasBeenSet; }
135 template<typename FixedResponseConfigT = FixedResponseActionConfig>
136 void SetFixedResponseConfig(FixedResponseConfigT&& value) { m_fixedResponseConfigHasBeenSet = true; m_fixedResponseConfig = std::forward<FixedResponseConfigT>(value); }
137 template<typename FixedResponseConfigT = FixedResponseActionConfig>
138 Action& WithFixedResponseConfig(FixedResponseConfigT&& value) { SetFixedResponseConfig(std::forward<FixedResponseConfigT>(value)); return *this;}
140
142
150 inline const ForwardActionConfig& GetForwardConfig() const { return m_forwardConfig; }
151 inline bool ForwardConfigHasBeenSet() const { return m_forwardConfigHasBeenSet; }
152 template<typename ForwardConfigT = ForwardActionConfig>
153 void SetForwardConfig(ForwardConfigT&& value) { m_forwardConfigHasBeenSet = true; m_forwardConfig = std::forward<ForwardConfigT>(value); }
154 template<typename ForwardConfigT = ForwardActionConfig>
155 Action& WithForwardConfig(ForwardConfigT&& value) { SetForwardConfig(std::forward<ForwardConfigT>(value)); return *this;}
157 private:
158
160 bool m_typeHasBeenSet = false;
161
162 Aws::String m_targetGroupArn;
163 bool m_targetGroupArnHasBeenSet = false;
164
165 AuthenticateOidcActionConfig m_authenticateOidcConfig;
166 bool m_authenticateOidcConfigHasBeenSet = false;
167
168 AuthenticateCognitoActionConfig m_authenticateCognitoConfig;
169 bool m_authenticateCognitoConfigHasBeenSet = false;
170
171 int m_order{0};
172 bool m_orderHasBeenSet = false;
173
174 RedirectActionConfig m_redirectConfig;
175 bool m_redirectConfigHasBeenSet = false;
176
177 FixedResponseActionConfig m_fixedResponseConfig;
178 bool m_fixedResponseConfigHasBeenSet = false;
179
180 ForwardActionConfig m_forwardConfig;
181 bool m_forwardConfigHasBeenSet = false;
182 };
183
184} // namespace Model
185} // namespace ElasticLoadBalancingv2
186} // namespace Aws
void SetType(ActionTypeEnum value)
Definition Action.h:57
void SetTargetGroupArn(TargetGroupArnT &&value)
Definition Action.h:71
void SetRedirectConfig(RedirectConfigT &&value)
Definition Action.h:122
Action & WithTargetGroupArn(TargetGroupArnT &&value)
Definition Action.h:73
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const AuthenticateOidcActionConfig & GetAuthenticateOidcConfig() const
Definition Action.h:82
AWS_ELASTICLOADBALANCINGV2_API Action()=default
void SetAuthenticateOidcConfig(AuthenticateOidcConfigT &&value)
Definition Action.h:85
Action & WithAuthenticateCognitoConfig(AuthenticateCognitoConfigT &&value)
Definition Action.h:100
AWS_ELASTICLOADBALANCINGV2_API Action & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Action & WithFixedResponseConfig(FixedResponseConfigT &&value)
Definition Action.h:138
void SetAuthenticateCognitoConfig(AuthenticateCognitoConfigT &&value)
Definition Action.h:98
const Aws::String & GetTargetGroupArn() const
Definition Action.h:68
Action & WithAuthenticateOidcConfig(AuthenticateOidcConfigT &&value)
Definition Action.h:87
void SetForwardConfig(ForwardConfigT &&value)
Definition Action.h:153
Action & WithRedirectConfig(RedirectConfigT &&value)
Definition Action.h:124
const RedirectActionConfig & GetRedirectConfig() const
Definition Action.h:119
Action & WithForwardConfig(ForwardConfigT &&value)
Definition Action.h:155
const AuthenticateCognitoActionConfig & GetAuthenticateCognitoConfig() const
Definition Action.h:95
void SetFixedResponseConfig(FixedResponseConfigT &&value)
Definition Action.h:136
const ForwardActionConfig & GetForwardConfig() const
Definition Action.h:150
const FixedResponseActionConfig & GetFixedResponseConfig() const
Definition Action.h:133
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
Action & WithType(ActionTypeEnum value)
Definition Action.h:58
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