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>
27namespace ElasticLoadBalancingv2
43 AWS_ELASTICLOADBALANCINGV2_API
Action() =
default;
47 AWS_ELASTICLOADBALANCINGV2_API
void OutputToStream(
Aws::OStream& ostream,
const char* location,
unsigned index,
const char* locationValue)
const;
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>
84 template<
typename AuthenticateO
idcConfigT = AuthenticateO
idcActionConfig>
85 void SetAuthenticateOidcConfig(AuthenticateOidcConfigT&& value) { m_authenticateOidcConfigHasBeenSet =
true; m_authenticateOidcConfig = std::forward<AuthenticateOidcConfigT>(value); }
86 template<
typename AuthenticateO
idcConfigT = AuthenticateO
idcActionConfig>
97 template<
typename AuthenticateCognitoConfigT = AuthenticateCognitoActionConfig>
98 void SetAuthenticateCognitoConfig(AuthenticateCognitoConfigT&& value) { m_authenticateCognitoConfigHasBeenSet =
true; m_authenticateCognitoConfig = std::forward<AuthenticateCognitoConfigT>(value); }
99 template<
typename AuthenticateCognitoConfigT = AuthenticateCognitoActionConfig>
110 inline void SetOrder(
int value) { m_orderHasBeenSet =
true; m_order = value; }
121 template<
typename RedirectConfigT = RedirectActionConfig>
122 void SetRedirectConfig(RedirectConfigT&& value) { m_redirectConfigHasBeenSet =
true; m_redirectConfig = std::forward<RedirectConfigT>(value); }
123 template<
typename RedirectConfigT = RedirectActionConfig>
135 template<
typename FixedResponseConfigT = FixedResponseActionConfig>
136 void SetFixedResponseConfig(FixedResponseConfigT&& value) { m_fixedResponseConfigHasBeenSet =
true; m_fixedResponseConfig = std::forward<FixedResponseConfigT>(value); }
137 template<
typename FixedResponseConfigT = FixedResponseActionConfig>
152 template<
typename ForwardConfigT = ForwardActionConfig>
153 void SetForwardConfig(ForwardConfigT&& value) { m_forwardConfigHasBeenSet =
true; m_forwardConfig = std::forward<ForwardConfigT>(value); }
154 template<
typename ForwardConfigT = ForwardActionConfig>
160 bool m_typeHasBeenSet =
false;
163 bool m_targetGroupArnHasBeenSet =
false;
165 AuthenticateOidcActionConfig m_authenticateOidcConfig;
166 bool m_authenticateOidcConfigHasBeenSet =
false;
168 AuthenticateCognitoActionConfig m_authenticateCognitoConfig;
169 bool m_authenticateCognitoConfigHasBeenSet =
false;
172 bool m_orderHasBeenSet =
false;
174 RedirectActionConfig m_redirectConfig;
175 bool m_redirectConfigHasBeenSet =
false;
177 FixedResponseActionConfig m_fixedResponseConfig;
178 bool m_fixedResponseConfigHasBeenSet =
false;
180 ForwardActionConfig m_forwardConfig;
181 bool m_forwardConfigHasBeenSet =
false;
bool FixedResponseConfigHasBeenSet() const
Action & WithOrder(int value)
void SetType(ActionTypeEnum value)
bool AuthenticateCognitoConfigHasBeenSet() const
void SetTargetGroupArn(TargetGroupArnT &&value)
void SetRedirectConfig(RedirectConfigT &&value)
Action & WithTargetGroupArn(TargetGroupArnT &&value)
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const AuthenticateOidcActionConfig & GetAuthenticateOidcConfig() const
AWS_ELASTICLOADBALANCINGV2_API Action()=default
bool TargetGroupArnHasBeenSet() const
void SetAuthenticateOidcConfig(AuthenticateOidcConfigT &&value)
bool OrderHasBeenSet() const
bool AuthenticateOidcConfigHasBeenSet() const
Action & WithAuthenticateCognitoConfig(AuthenticateCognitoConfigT &&value)
AWS_ELASTICLOADBALANCINGV2_API Action & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
Action & WithFixedResponseConfig(FixedResponseConfigT &&value)
void SetAuthenticateCognitoConfig(AuthenticateCognitoConfigT &&value)
const Aws::String & GetTargetGroupArn() const
bool ForwardConfigHasBeenSet() const
Action & WithAuthenticateOidcConfig(AuthenticateOidcConfigT &&value)
bool TypeHasBeenSet() const
bool RedirectConfigHasBeenSet() const
void SetForwardConfig(ForwardConfigT &&value)
Action & WithRedirectConfig(RedirectConfigT &&value)
const RedirectActionConfig & GetRedirectConfig() const
Action & WithForwardConfig(ForwardConfigT &&value)
const AuthenticateCognitoActionConfig & GetAuthenticateCognitoConfig() const
void SetFixedResponseConfig(FixedResponseConfigT &&value)
ActionTypeEnum GetType() const
const ForwardActionConfig & GetForwardConfig() const
const FixedResponseActionConfig & GetFixedResponseConfig() const
AWS_ELASTICLOADBALANCINGV2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
Action & WithType(ActionTypeEnum value)
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