AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
TrafficMirrorTarget.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/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/Tag.h>
12#include <aws/ec2/model/TrafficMirrorTargetType.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace EC2 {
23namespace Model {
24
31 public:
32 AWS_EC2_API TrafficMirrorTarget() = default;
33 AWS_EC2_API TrafficMirrorTarget(const Aws::Utils::Xml::XmlNode& xmlNode);
35
36 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
37 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
38
40
43 inline const Aws::String& GetTrafficMirrorTargetId() const { return m_trafficMirrorTargetId; }
44 inline bool TrafficMirrorTargetIdHasBeenSet() const { return m_trafficMirrorTargetIdHasBeenSet; }
45 template <typename TrafficMirrorTargetIdT = Aws::String>
46 void SetTrafficMirrorTargetId(TrafficMirrorTargetIdT&& value) {
47 m_trafficMirrorTargetIdHasBeenSet = true;
48 m_trafficMirrorTargetId = std::forward<TrafficMirrorTargetIdT>(value);
49 }
50 template <typename TrafficMirrorTargetIdT = Aws::String>
51 TrafficMirrorTarget& WithTrafficMirrorTargetId(TrafficMirrorTargetIdT&& value) {
52 SetTrafficMirrorTargetId(std::forward<TrafficMirrorTargetIdT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetNetworkInterfaceId() const { return m_networkInterfaceId; }
62 inline bool NetworkInterfaceIdHasBeenSet() const { return m_networkInterfaceIdHasBeenSet; }
63 template <typename NetworkInterfaceIdT = Aws::String>
64 void SetNetworkInterfaceId(NetworkInterfaceIdT&& value) {
65 m_networkInterfaceIdHasBeenSet = true;
66 m_networkInterfaceId = std::forward<NetworkInterfaceIdT>(value);
67 }
68 template <typename NetworkInterfaceIdT = Aws::String>
69 TrafficMirrorTarget& WithNetworkInterfaceId(NetworkInterfaceIdT&& value) {
70 SetNetworkInterfaceId(std::forward<NetworkInterfaceIdT>(value));
71 return *this;
72 }
74
76
79 inline const Aws::String& GetNetworkLoadBalancerArn() const { return m_networkLoadBalancerArn; }
80 inline bool NetworkLoadBalancerArnHasBeenSet() const { return m_networkLoadBalancerArnHasBeenSet; }
81 template <typename NetworkLoadBalancerArnT = Aws::String>
82 void SetNetworkLoadBalancerArn(NetworkLoadBalancerArnT&& value) {
83 m_networkLoadBalancerArnHasBeenSet = true;
84 m_networkLoadBalancerArn = std::forward<NetworkLoadBalancerArnT>(value);
85 }
86 template <typename NetworkLoadBalancerArnT = Aws::String>
87 TrafficMirrorTarget& WithNetworkLoadBalancerArn(NetworkLoadBalancerArnT&& value) {
88 SetNetworkLoadBalancerArn(std::forward<NetworkLoadBalancerArnT>(value));
89 return *this;
90 }
92
94
97 inline TrafficMirrorTargetType GetType() const { return m_type; }
98 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
99 inline void SetType(TrafficMirrorTargetType value) {
100 m_typeHasBeenSet = true;
101 m_type = value;
102 }
104 SetType(value);
105 return *this;
106 }
108
110
113 inline const Aws::String& GetDescription() const { return m_description; }
114 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
115 template <typename DescriptionT = Aws::String>
116 void SetDescription(DescriptionT&& value) {
117 m_descriptionHasBeenSet = true;
118 m_description = std::forward<DescriptionT>(value);
119 }
120 template <typename DescriptionT = Aws::String>
121 TrafficMirrorTarget& WithDescription(DescriptionT&& value) {
122 SetDescription(std::forward<DescriptionT>(value));
123 return *this;
124 }
126
128
131 inline const Aws::String& GetOwnerId() const { return m_ownerId; }
132 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
133 template <typename OwnerIdT = Aws::String>
134 void SetOwnerId(OwnerIdT&& value) {
135 m_ownerIdHasBeenSet = true;
136 m_ownerId = std::forward<OwnerIdT>(value);
137 }
138 template <typename OwnerIdT = Aws::String>
139 TrafficMirrorTarget& WithOwnerId(OwnerIdT&& value) {
140 SetOwnerId(std::forward<OwnerIdT>(value));
141 return *this;
142 }
144
146
149 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
150 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
151 template <typename TagsT = Aws::Vector<Tag>>
152 void SetTags(TagsT&& value) {
153 m_tagsHasBeenSet = true;
154 m_tags = std::forward<TagsT>(value);
155 }
156 template <typename TagsT = Aws::Vector<Tag>>
158 SetTags(std::forward<TagsT>(value));
159 return *this;
160 }
161 template <typename TagsT = Tag>
162 TrafficMirrorTarget& AddTags(TagsT&& value) {
163 m_tagsHasBeenSet = true;
164 m_tags.emplace_back(std::forward<TagsT>(value));
165 return *this;
166 }
168
170
173 inline const Aws::String& GetGatewayLoadBalancerEndpointId() const { return m_gatewayLoadBalancerEndpointId; }
174 inline bool GatewayLoadBalancerEndpointIdHasBeenSet() const { return m_gatewayLoadBalancerEndpointIdHasBeenSet; }
175 template <typename GatewayLoadBalancerEndpointIdT = Aws::String>
176 void SetGatewayLoadBalancerEndpointId(GatewayLoadBalancerEndpointIdT&& value) {
177 m_gatewayLoadBalancerEndpointIdHasBeenSet = true;
178 m_gatewayLoadBalancerEndpointId = std::forward<GatewayLoadBalancerEndpointIdT>(value);
179 }
180 template <typename GatewayLoadBalancerEndpointIdT = Aws::String>
181 TrafficMirrorTarget& WithGatewayLoadBalancerEndpointId(GatewayLoadBalancerEndpointIdT&& value) {
182 SetGatewayLoadBalancerEndpointId(std::forward<GatewayLoadBalancerEndpointIdT>(value));
183 return *this;
184 }
186 private:
187 Aws::String m_trafficMirrorTargetId;
188
189 Aws::String m_networkInterfaceId;
190
191 Aws::String m_networkLoadBalancerArn;
192
194
195 Aws::String m_description;
196
197 Aws::String m_ownerId;
198
199 Aws::Vector<Tag> m_tags;
200
201 Aws::String m_gatewayLoadBalancerEndpointId;
202 bool m_trafficMirrorTargetIdHasBeenSet = false;
203 bool m_networkInterfaceIdHasBeenSet = false;
204 bool m_networkLoadBalancerArnHasBeenSet = false;
205 bool m_typeHasBeenSet = false;
206 bool m_descriptionHasBeenSet = false;
207 bool m_ownerIdHasBeenSet = false;
208 bool m_tagsHasBeenSet = false;
209 bool m_gatewayLoadBalancerEndpointIdHasBeenSet = false;
210};
211
212} // namespace Model
213} // namespace EC2
214} // namespace Aws
const Aws::String & GetNetworkInterfaceId() const
TrafficMirrorTarget & WithOwnerId(OwnerIdT &&value)
const Aws::String & GetTrafficMirrorTargetId() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetGatewayLoadBalancerEndpointId(GatewayLoadBalancerEndpointIdT &&value)
void SetNetworkInterfaceId(NetworkInterfaceIdT &&value)
TrafficMirrorTarget & WithDescription(DescriptionT &&value)
void SetNetworkLoadBalancerArn(NetworkLoadBalancerArnT &&value)
void SetType(TrafficMirrorTargetType value)
const Aws::String & GetGatewayLoadBalancerEndpointId() const
TrafficMirrorTarget & WithTags(TagsT &&value)
void SetDescription(DescriptionT &&value)
AWS_EC2_API TrafficMirrorTarget()=default
const Aws::String & GetDescription() const
AWS_EC2_API TrafficMirrorTarget & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetOwnerId() const
TrafficMirrorTarget & WithGatewayLoadBalancerEndpointId(GatewayLoadBalancerEndpointIdT &&value)
const Aws::Vector< Tag > & GetTags() const
TrafficMirrorTarget & WithNetworkLoadBalancerArn(NetworkLoadBalancerArnT &&value)
const Aws::String & GetNetworkLoadBalancerArn() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
TrafficMirrorTarget & WithType(TrafficMirrorTargetType value)
TrafficMirrorTarget & WithTrafficMirrorTargetId(TrafficMirrorTargetIdT &&value)
TrafficMirrorTarget & AddTags(TagsT &&value)
TrafficMirrorTarget & WithNetworkInterfaceId(NetworkInterfaceIdT &&value)
TrafficMirrorTargetType GetType() const
void SetTrafficMirrorTargetId(TrafficMirrorTargetIdT &&value)
AWS_EC2_API TrafficMirrorTarget(const Aws::Utils::Xml::XmlNode &xmlNode)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream