7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/ecs/ECS_EXPORTS.h>
9#include <aws/ecs/model/GatewayAlbDesyncMitigationMode.h>
10#include <aws/ecs/model/GatewayAlbProtocol.h>
11#include <aws/ecs/model/GatewayAlbTestTrafficRules.h>
12#include <aws/ecs/model/GatewayElbAccessLogConfiguration.h>
13#include <aws/ecs/model/GatewayElbNetworkConfiguration.h>
14#include <aws/ecs/model/GatewayElbScheme.h>
49 template <
typename NetworkConfigurationT = GatewayElbNetworkConfiguration>
51 m_networkConfigurationHasBeenSet =
true;
52 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
54 template <
typename NetworkConfigurationT = GatewayElbNetworkConfiguration>
70 m_schemeHasBeenSet =
true;
86 template <
typename WebACLArnT = Aws::String>
88 m_webACLArnHasBeenSet =
true;
89 m_webACLArn = std::forward<WebACLArnT>(value);
91 template <
typename WebACLArnT = Aws::String>
105 template <
typename AccessLogsT = GatewayElbAccessLogConfiguration>
107 m_accessLogsHasBeenSet =
true;
108 m_accessLogs = std::forward<AccessLogsT>(value);
110 template <
typename AccessLogsT = GatewayElbAccessLogConfiguration>
125 m_portHasBeenSet =
true;
142 m_protocolHasBeenSet =
true;
159 m_maxAlbCountHasBeenSet =
true;
160 m_maxAlbCount = value;
177 m_httpDesyncHasBeenSet =
true;
178 m_httpDesync = value;
195 template <
typename TestTrafficRulesT = GatewayAlbTestTrafficRules>
197 m_testTrafficRulesHasBeenSet =
true;
198 m_testTrafficRules = std::forward<TestTrafficRulesT>(value);
200 template <
typename TestTrafficRulesT = GatewayAlbTestTrafficRules>
213 GatewayElbAccessLogConfiguration m_accessLogs;
219 int m_maxAlbCount{0};
223 GatewayAlbTestTrafficRules m_testTrafficRules;
224 bool m_networkConfigurationHasBeenSet =
false;
225 bool m_schemeHasBeenSet =
false;
226 bool m_webACLArnHasBeenSet =
false;
227 bool m_accessLogsHasBeenSet =
false;
228 bool m_portHasBeenSet =
false;
229 bool m_protocolHasBeenSet =
false;
230 bool m_maxAlbCountHasBeenSet =
false;
231 bool m_httpDesyncHasBeenSet =
false;
232 bool m_testTrafficRulesHasBeenSet =
false;
void SetNetworkConfiguration(NetworkConfigurationT &&value)
HostSharedAlbConfiguration & WithHttpDesync(GatewayAlbDesyncMitigationMode value)
void SetHttpDesync(GatewayAlbDesyncMitigationMode value)
HostSharedAlbConfiguration & WithPort(int value)
bool WebACLArnHasBeenSet() const
bool PortHasBeenSet() const
AWS_ECS_API HostSharedAlbConfiguration(Aws::Utils::Json::JsonView jsonValue)
GatewayAlbProtocol GetProtocol() const
HostSharedAlbConfiguration & WithMaxAlbCount(int value)
bool MaxAlbCountHasBeenSet() const
HostSharedAlbConfiguration & WithWebACLArn(WebACLArnT &&value)
HostSharedAlbConfiguration & WithNetworkConfiguration(NetworkConfigurationT &&value)
bool HttpDesyncHasBeenSet() const
bool NetworkConfigurationHasBeenSet() const
void SetTestTrafficRules(TestTrafficRulesT &&value)
bool TestTrafficRulesHasBeenSet() const
HostSharedAlbConfiguration & WithTestTrafficRules(TestTrafficRulesT &&value)
HostSharedAlbConfiguration & WithScheme(GatewayElbScheme value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
const GatewayAlbTestTrafficRules & GetTestTrafficRules() const
GatewayElbScheme GetScheme() const
const GatewayElbNetworkConfiguration & GetNetworkConfiguration() const
GatewayAlbDesyncMitigationMode GetHttpDesync() const
void SetAccessLogs(AccessLogsT &&value)
bool SchemeHasBeenSet() const
void SetProtocol(GatewayAlbProtocol value)
HostSharedAlbConfiguration & WithProtocol(GatewayAlbProtocol value)
void SetScheme(GatewayElbScheme value)
int GetMaxAlbCount() const
void SetMaxAlbCount(int value)
void SetWebACLArn(WebACLArnT &&value)
const GatewayElbAccessLogConfiguration & GetAccessLogs() const
HostSharedAlbConfiguration & WithAccessLogs(AccessLogsT &&value)
bool ProtocolHasBeenSet() const
AWS_ECS_API HostSharedAlbConfiguration()=default
bool AccessLogsHasBeenSet() const
const Aws::String & GetWebACLArn() const
AWS_ECS_API HostSharedAlbConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
GatewayAlbDesyncMitigationMode
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue