AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
AwsElbLoadBalancerAttributes.h
1
6#pragma once
7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/securityhub/model/AwsElbLoadBalancerAccessLog.h>
9#include <aws/securityhub/model/AwsElbLoadBalancerConnectionDraining.h>
10#include <aws/securityhub/model/AwsElbLoadBalancerConnectionSettings.h>
11#include <aws/securityhub/model/AwsElbLoadBalancerCrossZoneLoadBalancing.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/securityhub/model/AwsElbLoadBalancerAdditionalAttribute.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace SecurityHub
27{
28namespace Model
29{
30
37 {
38 public:
39 AWS_SECURITYHUB_API AwsElbLoadBalancerAttributes() = default;
42 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
51 inline const AwsElbLoadBalancerAccessLog& GetAccessLog() const { return m_accessLog; }
52 inline bool AccessLogHasBeenSet() const { return m_accessLogHasBeenSet; }
53 template<typename AccessLogT = AwsElbLoadBalancerAccessLog>
54 void SetAccessLog(AccessLogT&& value) { m_accessLogHasBeenSet = true; m_accessLog = std::forward<AccessLogT>(value); }
55 template<typename AccessLogT = AwsElbLoadBalancerAccessLog>
56 AwsElbLoadBalancerAttributes& WithAccessLog(AccessLogT&& value) { SetAccessLog(std::forward<AccessLogT>(value)); return *this;}
58
60
66 inline const AwsElbLoadBalancerConnectionDraining& GetConnectionDraining() const { return m_connectionDraining; }
67 inline bool ConnectionDrainingHasBeenSet() const { return m_connectionDrainingHasBeenSet; }
68 template<typename ConnectionDrainingT = AwsElbLoadBalancerConnectionDraining>
69 void SetConnectionDraining(ConnectionDrainingT&& value) { m_connectionDrainingHasBeenSet = true; m_connectionDraining = std::forward<ConnectionDrainingT>(value); }
70 template<typename ConnectionDrainingT = AwsElbLoadBalancerConnectionDraining>
71 AwsElbLoadBalancerAttributes& WithConnectionDraining(ConnectionDrainingT&& value) { SetConnectionDraining(std::forward<ConnectionDrainingT>(value)); return *this;}
73
75
81 inline const AwsElbLoadBalancerConnectionSettings& GetConnectionSettings() const { return m_connectionSettings; }
82 inline bool ConnectionSettingsHasBeenSet() const { return m_connectionSettingsHasBeenSet; }
83 template<typename ConnectionSettingsT = AwsElbLoadBalancerConnectionSettings>
84 void SetConnectionSettings(ConnectionSettingsT&& value) { m_connectionSettingsHasBeenSet = true; m_connectionSettings = std::forward<ConnectionSettingsT>(value); }
85 template<typename ConnectionSettingsT = AwsElbLoadBalancerConnectionSettings>
86 AwsElbLoadBalancerAttributes& WithConnectionSettings(ConnectionSettingsT&& value) { SetConnectionSettings(std::forward<ConnectionSettingsT>(value)); return *this;}
88
90
95 inline const AwsElbLoadBalancerCrossZoneLoadBalancing& GetCrossZoneLoadBalancing() const { return m_crossZoneLoadBalancing; }
96 inline bool CrossZoneLoadBalancingHasBeenSet() const { return m_crossZoneLoadBalancingHasBeenSet; }
97 template<typename CrossZoneLoadBalancingT = AwsElbLoadBalancerCrossZoneLoadBalancing>
98 void SetCrossZoneLoadBalancing(CrossZoneLoadBalancingT&& value) { m_crossZoneLoadBalancingHasBeenSet = true; m_crossZoneLoadBalancing = std::forward<CrossZoneLoadBalancingT>(value); }
99 template<typename CrossZoneLoadBalancingT = AwsElbLoadBalancerCrossZoneLoadBalancing>
100 AwsElbLoadBalancerAttributes& WithCrossZoneLoadBalancing(CrossZoneLoadBalancingT&& value) { SetCrossZoneLoadBalancing(std::forward<CrossZoneLoadBalancingT>(value)); return *this;}
102
104
107 inline const Aws::Vector<AwsElbLoadBalancerAdditionalAttribute>& GetAdditionalAttributes() const { return m_additionalAttributes; }
108 inline bool AdditionalAttributesHasBeenSet() const { return m_additionalAttributesHasBeenSet; }
109 template<typename AdditionalAttributesT = Aws::Vector<AwsElbLoadBalancerAdditionalAttribute>>
110 void SetAdditionalAttributes(AdditionalAttributesT&& value) { m_additionalAttributesHasBeenSet = true; m_additionalAttributes = std::forward<AdditionalAttributesT>(value); }
111 template<typename AdditionalAttributesT = Aws::Vector<AwsElbLoadBalancerAdditionalAttribute>>
112 AwsElbLoadBalancerAttributes& WithAdditionalAttributes(AdditionalAttributesT&& value) { SetAdditionalAttributes(std::forward<AdditionalAttributesT>(value)); return *this;}
113 template<typename AdditionalAttributesT = AwsElbLoadBalancerAdditionalAttribute>
114 AwsElbLoadBalancerAttributes& AddAdditionalAttributes(AdditionalAttributesT&& value) { m_additionalAttributesHasBeenSet = true; m_additionalAttributes.emplace_back(std::forward<AdditionalAttributesT>(value)); return *this; }
116 private:
117
118 AwsElbLoadBalancerAccessLog m_accessLog;
119 bool m_accessLogHasBeenSet = false;
120
121 AwsElbLoadBalancerConnectionDraining m_connectionDraining;
122 bool m_connectionDrainingHasBeenSet = false;
123
124 AwsElbLoadBalancerConnectionSettings m_connectionSettings;
125 bool m_connectionSettingsHasBeenSet = false;
126
127 AwsElbLoadBalancerCrossZoneLoadBalancing m_crossZoneLoadBalancing;
128 bool m_crossZoneLoadBalancingHasBeenSet = false;
129
131 bool m_additionalAttributesHasBeenSet = false;
132 };
133
134} // namespace Model
135} // namespace SecurityHub
136} // namespace Aws
const Aws::Vector< AwsElbLoadBalancerAdditionalAttribute > & GetAdditionalAttributes() const
const AwsElbLoadBalancerAccessLog & GetAccessLog() const
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_SECURITYHUB_API AwsElbLoadBalancerAttributes(Aws::Utils::Json::JsonView jsonValue)
AwsElbLoadBalancerAttributes & WithConnectionDraining(ConnectionDrainingT &&value)
const AwsElbLoadBalancerConnectionDraining & GetConnectionDraining() const
const AwsElbLoadBalancerConnectionSettings & GetConnectionSettings() const
AwsElbLoadBalancerAttributes & WithAdditionalAttributes(AdditionalAttributesT &&value)
const AwsElbLoadBalancerCrossZoneLoadBalancing & GetCrossZoneLoadBalancing() const
AwsElbLoadBalancerAttributes & AddAdditionalAttributes(AdditionalAttributesT &&value)
AWS_SECURITYHUB_API AwsElbLoadBalancerAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
AwsElbLoadBalancerAttributes & WithConnectionSettings(ConnectionSettingsT &&value)
AWS_SECURITYHUB_API AwsElbLoadBalancerAttributes()=default
AwsElbLoadBalancerAttributes & WithAccessLog(AccessLogT &&value)
AwsElbLoadBalancerAttributes & WithCrossZoneLoadBalancing(CrossZoneLoadBalancingT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue