AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
PathComponent.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/ec2/model/AnalysisAclRule.h>
10#include <aws/ec2/model/AnalysisComponent.h>
11#include <aws/ec2/model/AnalysisPacketHeader.h>
12#include <aws/ec2/model/AnalysisRouteTableRoute.h>
13#include <aws/ec2/model/AnalysisSecurityGroupRule.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/ec2/model/TransitGatewayRouteTableRoute.h>
16#include <aws/ec2/model/FirewallStatelessRule.h>
17#include <aws/ec2/model/FirewallStatefulRule.h>
18#include <aws/core/utils/memory/stl/AWSString.h>
19#include <aws/ec2/model/AdditionalDetail.h>
20#include <aws/ec2/model/Explanation.h>
21#include <utility>
22
23namespace Aws
24{
25namespace Utils
26{
27namespace Xml
28{
29 class XmlNode;
30} // namespace Xml
31} // namespace Utils
32namespace EC2
33{
34namespace Model
35{
36
43 {
44 public:
45 AWS_EC2_API PathComponent() = default;
46 AWS_EC2_API PathComponent(const Aws::Utils::Xml::XmlNode& xmlNode);
47 AWS_EC2_API PathComponent& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
48
49 AWS_EC2_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
50 AWS_EC2_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
51
52
54
57 inline int GetSequenceNumber() const { return m_sequenceNumber; }
58 inline bool SequenceNumberHasBeenSet() const { return m_sequenceNumberHasBeenSet; }
59 inline void SetSequenceNumber(int value) { m_sequenceNumberHasBeenSet = true; m_sequenceNumber = value; }
60 inline PathComponent& WithSequenceNumber(int value) { SetSequenceNumber(value); return *this;}
62
64
67 inline const AnalysisAclRule& GetAclRule() const { return m_aclRule; }
68 inline bool AclRuleHasBeenSet() const { return m_aclRuleHasBeenSet; }
69 template<typename AclRuleT = AnalysisAclRule>
70 void SetAclRule(AclRuleT&& value) { m_aclRuleHasBeenSet = true; m_aclRule = std::forward<AclRuleT>(value); }
71 template<typename AclRuleT = AnalysisAclRule>
72 PathComponent& WithAclRule(AclRuleT&& value) { SetAclRule(std::forward<AclRuleT>(value)); return *this;}
74
76
79 inline const AnalysisComponent& GetAttachedTo() const { return m_attachedTo; }
80 inline bool AttachedToHasBeenSet() const { return m_attachedToHasBeenSet; }
81 template<typename AttachedToT = AnalysisComponent>
82 void SetAttachedTo(AttachedToT&& value) { m_attachedToHasBeenSet = true; m_attachedTo = std::forward<AttachedToT>(value); }
83 template<typename AttachedToT = AnalysisComponent>
84 PathComponent& WithAttachedTo(AttachedToT&& value) { SetAttachedTo(std::forward<AttachedToT>(value)); return *this;}
86
88
91 inline const AnalysisComponent& GetComponent() const { return m_component; }
92 inline bool ComponentHasBeenSet() const { return m_componentHasBeenSet; }
93 template<typename ComponentT = AnalysisComponent>
94 void SetComponent(ComponentT&& value) { m_componentHasBeenSet = true; m_component = std::forward<ComponentT>(value); }
95 template<typename ComponentT = AnalysisComponent>
96 PathComponent& WithComponent(ComponentT&& value) { SetComponent(std::forward<ComponentT>(value)); return *this;}
98
100
103 inline const AnalysisComponent& GetDestinationVpc() const { return m_destinationVpc; }
104 inline bool DestinationVpcHasBeenSet() const { return m_destinationVpcHasBeenSet; }
105 template<typename DestinationVpcT = AnalysisComponent>
106 void SetDestinationVpc(DestinationVpcT&& value) { m_destinationVpcHasBeenSet = true; m_destinationVpc = std::forward<DestinationVpcT>(value); }
107 template<typename DestinationVpcT = AnalysisComponent>
108 PathComponent& WithDestinationVpc(DestinationVpcT&& value) { SetDestinationVpc(std::forward<DestinationVpcT>(value)); return *this;}
110
112
115 inline const AnalysisPacketHeader& GetOutboundHeader() const { return m_outboundHeader; }
116 inline bool OutboundHeaderHasBeenSet() const { return m_outboundHeaderHasBeenSet; }
117 template<typename OutboundHeaderT = AnalysisPacketHeader>
118 void SetOutboundHeader(OutboundHeaderT&& value) { m_outboundHeaderHasBeenSet = true; m_outboundHeader = std::forward<OutboundHeaderT>(value); }
119 template<typename OutboundHeaderT = AnalysisPacketHeader>
120 PathComponent& WithOutboundHeader(OutboundHeaderT&& value) { SetOutboundHeader(std::forward<OutboundHeaderT>(value)); return *this;}
122
124
127 inline const AnalysisPacketHeader& GetInboundHeader() const { return m_inboundHeader; }
128 inline bool InboundHeaderHasBeenSet() const { return m_inboundHeaderHasBeenSet; }
129 template<typename InboundHeaderT = AnalysisPacketHeader>
130 void SetInboundHeader(InboundHeaderT&& value) { m_inboundHeaderHasBeenSet = true; m_inboundHeader = std::forward<InboundHeaderT>(value); }
131 template<typename InboundHeaderT = AnalysisPacketHeader>
132 PathComponent& WithInboundHeader(InboundHeaderT&& value) { SetInboundHeader(std::forward<InboundHeaderT>(value)); return *this;}
134
136
139 inline const AnalysisRouteTableRoute& GetRouteTableRoute() const { return m_routeTableRoute; }
140 inline bool RouteTableRouteHasBeenSet() const { return m_routeTableRouteHasBeenSet; }
141 template<typename RouteTableRouteT = AnalysisRouteTableRoute>
142 void SetRouteTableRoute(RouteTableRouteT&& value) { m_routeTableRouteHasBeenSet = true; m_routeTableRoute = std::forward<RouteTableRouteT>(value); }
143 template<typename RouteTableRouteT = AnalysisRouteTableRoute>
144 PathComponent& WithRouteTableRoute(RouteTableRouteT&& value) { SetRouteTableRoute(std::forward<RouteTableRouteT>(value)); return *this;}
146
148
151 inline const AnalysisSecurityGroupRule& GetSecurityGroupRule() const { return m_securityGroupRule; }
152 inline bool SecurityGroupRuleHasBeenSet() const { return m_securityGroupRuleHasBeenSet; }
153 template<typename SecurityGroupRuleT = AnalysisSecurityGroupRule>
154 void SetSecurityGroupRule(SecurityGroupRuleT&& value) { m_securityGroupRuleHasBeenSet = true; m_securityGroupRule = std::forward<SecurityGroupRuleT>(value); }
155 template<typename SecurityGroupRuleT = AnalysisSecurityGroupRule>
156 PathComponent& WithSecurityGroupRule(SecurityGroupRuleT&& value) { SetSecurityGroupRule(std::forward<SecurityGroupRuleT>(value)); return *this;}
158
160
163 inline const AnalysisComponent& GetSourceVpc() const { return m_sourceVpc; }
164 inline bool SourceVpcHasBeenSet() const { return m_sourceVpcHasBeenSet; }
165 template<typename SourceVpcT = AnalysisComponent>
166 void SetSourceVpc(SourceVpcT&& value) { m_sourceVpcHasBeenSet = true; m_sourceVpc = std::forward<SourceVpcT>(value); }
167 template<typename SourceVpcT = AnalysisComponent>
168 PathComponent& WithSourceVpc(SourceVpcT&& value) { SetSourceVpc(std::forward<SourceVpcT>(value)); return *this;}
170
172
175 inline const AnalysisComponent& GetSubnet() const { return m_subnet; }
176 inline bool SubnetHasBeenSet() const { return m_subnetHasBeenSet; }
177 template<typename SubnetT = AnalysisComponent>
178 void SetSubnet(SubnetT&& value) { m_subnetHasBeenSet = true; m_subnet = std::forward<SubnetT>(value); }
179 template<typename SubnetT = AnalysisComponent>
180 PathComponent& WithSubnet(SubnetT&& value) { SetSubnet(std::forward<SubnetT>(value)); return *this;}
182
184
187 inline const AnalysisComponent& GetVpc() const { return m_vpc; }
188 inline bool VpcHasBeenSet() const { return m_vpcHasBeenSet; }
189 template<typename VpcT = AnalysisComponent>
190 void SetVpc(VpcT&& value) { m_vpcHasBeenSet = true; m_vpc = std::forward<VpcT>(value); }
191 template<typename VpcT = AnalysisComponent>
192 PathComponent& WithVpc(VpcT&& value) { SetVpc(std::forward<VpcT>(value)); return *this;}
194
196
199 inline const Aws::Vector<AdditionalDetail>& GetAdditionalDetails() const { return m_additionalDetails; }
200 inline bool AdditionalDetailsHasBeenSet() const { return m_additionalDetailsHasBeenSet; }
201 template<typename AdditionalDetailsT = Aws::Vector<AdditionalDetail>>
202 void SetAdditionalDetails(AdditionalDetailsT&& value) { m_additionalDetailsHasBeenSet = true; m_additionalDetails = std::forward<AdditionalDetailsT>(value); }
203 template<typename AdditionalDetailsT = Aws::Vector<AdditionalDetail>>
204 PathComponent& WithAdditionalDetails(AdditionalDetailsT&& value) { SetAdditionalDetails(std::forward<AdditionalDetailsT>(value)); return *this;}
205 template<typename AdditionalDetailsT = AdditionalDetail>
206 PathComponent& AddAdditionalDetails(AdditionalDetailsT&& value) { m_additionalDetailsHasBeenSet = true; m_additionalDetails.emplace_back(std::forward<AdditionalDetailsT>(value)); return *this; }
208
210
213 inline const AnalysisComponent& GetTransitGateway() const { return m_transitGateway; }
214 inline bool TransitGatewayHasBeenSet() const { return m_transitGatewayHasBeenSet; }
215 template<typename TransitGatewayT = AnalysisComponent>
216 void SetTransitGateway(TransitGatewayT&& value) { m_transitGatewayHasBeenSet = true; m_transitGateway = std::forward<TransitGatewayT>(value); }
217 template<typename TransitGatewayT = AnalysisComponent>
218 PathComponent& WithTransitGateway(TransitGatewayT&& value) { SetTransitGateway(std::forward<TransitGatewayT>(value)); return *this;}
220
222
225 inline const TransitGatewayRouteTableRoute& GetTransitGatewayRouteTableRoute() const { return m_transitGatewayRouteTableRoute; }
226 inline bool TransitGatewayRouteTableRouteHasBeenSet() const { return m_transitGatewayRouteTableRouteHasBeenSet; }
227 template<typename TransitGatewayRouteTableRouteT = TransitGatewayRouteTableRoute>
228 void SetTransitGatewayRouteTableRoute(TransitGatewayRouteTableRouteT&& value) { m_transitGatewayRouteTableRouteHasBeenSet = true; m_transitGatewayRouteTableRoute = std::forward<TransitGatewayRouteTableRouteT>(value); }
229 template<typename TransitGatewayRouteTableRouteT = TransitGatewayRouteTableRoute>
230 PathComponent& WithTransitGatewayRouteTableRoute(TransitGatewayRouteTableRouteT&& value) { SetTransitGatewayRouteTableRoute(std::forward<TransitGatewayRouteTableRouteT>(value)); return *this;}
232
234
237 inline const Aws::Vector<Explanation>& GetExplanations() const { return m_explanations; }
238 inline bool ExplanationsHasBeenSet() const { return m_explanationsHasBeenSet; }
239 template<typename ExplanationsT = Aws::Vector<Explanation>>
240 void SetExplanations(ExplanationsT&& value) { m_explanationsHasBeenSet = true; m_explanations = std::forward<ExplanationsT>(value); }
241 template<typename ExplanationsT = Aws::Vector<Explanation>>
242 PathComponent& WithExplanations(ExplanationsT&& value) { SetExplanations(std::forward<ExplanationsT>(value)); return *this;}
243 template<typename ExplanationsT = Explanation>
244 PathComponent& AddExplanations(ExplanationsT&& value) { m_explanationsHasBeenSet = true; m_explanations.emplace_back(std::forward<ExplanationsT>(value)); return *this; }
246
248
251 inline const AnalysisComponent& GetElasticLoadBalancerListener() const { return m_elasticLoadBalancerListener; }
252 inline bool ElasticLoadBalancerListenerHasBeenSet() const { return m_elasticLoadBalancerListenerHasBeenSet; }
253 template<typename ElasticLoadBalancerListenerT = AnalysisComponent>
254 void SetElasticLoadBalancerListener(ElasticLoadBalancerListenerT&& value) { m_elasticLoadBalancerListenerHasBeenSet = true; m_elasticLoadBalancerListener = std::forward<ElasticLoadBalancerListenerT>(value); }
255 template<typename ElasticLoadBalancerListenerT = AnalysisComponent>
256 PathComponent& WithElasticLoadBalancerListener(ElasticLoadBalancerListenerT&& value) { SetElasticLoadBalancerListener(std::forward<ElasticLoadBalancerListenerT>(value)); return *this;}
258
260
263 inline const FirewallStatelessRule& GetFirewallStatelessRule() const { return m_firewallStatelessRule; }
264 inline bool FirewallStatelessRuleHasBeenSet() const { return m_firewallStatelessRuleHasBeenSet; }
265 template<typename FirewallStatelessRuleT = FirewallStatelessRule>
266 void SetFirewallStatelessRule(FirewallStatelessRuleT&& value) { m_firewallStatelessRuleHasBeenSet = true; m_firewallStatelessRule = std::forward<FirewallStatelessRuleT>(value); }
267 template<typename FirewallStatelessRuleT = FirewallStatelessRule>
268 PathComponent& WithFirewallStatelessRule(FirewallStatelessRuleT&& value) { SetFirewallStatelessRule(std::forward<FirewallStatelessRuleT>(value)); return *this;}
270
272
275 inline const FirewallStatefulRule& GetFirewallStatefulRule() const { return m_firewallStatefulRule; }
276 inline bool FirewallStatefulRuleHasBeenSet() const { return m_firewallStatefulRuleHasBeenSet; }
277 template<typename FirewallStatefulRuleT = FirewallStatefulRule>
278 void SetFirewallStatefulRule(FirewallStatefulRuleT&& value) { m_firewallStatefulRuleHasBeenSet = true; m_firewallStatefulRule = std::forward<FirewallStatefulRuleT>(value); }
279 template<typename FirewallStatefulRuleT = FirewallStatefulRule>
280 PathComponent& WithFirewallStatefulRule(FirewallStatefulRuleT&& value) { SetFirewallStatefulRule(std::forward<FirewallStatefulRuleT>(value)); return *this;}
282
284
287 inline const Aws::String& GetServiceName() const { return m_serviceName; }
288 inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; }
289 template<typename ServiceNameT = Aws::String>
290 void SetServiceName(ServiceNameT&& value) { m_serviceNameHasBeenSet = true; m_serviceName = std::forward<ServiceNameT>(value); }
291 template<typename ServiceNameT = Aws::String>
292 PathComponent& WithServiceName(ServiceNameT&& value) { SetServiceName(std::forward<ServiceNameT>(value)); return *this;}
294 private:
295
296 int m_sequenceNumber{0};
297 bool m_sequenceNumberHasBeenSet = false;
298
299 AnalysisAclRule m_aclRule;
300 bool m_aclRuleHasBeenSet = false;
301
302 AnalysisComponent m_attachedTo;
303 bool m_attachedToHasBeenSet = false;
304
305 AnalysisComponent m_component;
306 bool m_componentHasBeenSet = false;
307
308 AnalysisComponent m_destinationVpc;
309 bool m_destinationVpcHasBeenSet = false;
310
311 AnalysisPacketHeader m_outboundHeader;
312 bool m_outboundHeaderHasBeenSet = false;
313
314 AnalysisPacketHeader m_inboundHeader;
315 bool m_inboundHeaderHasBeenSet = false;
316
317 AnalysisRouteTableRoute m_routeTableRoute;
318 bool m_routeTableRouteHasBeenSet = false;
319
320 AnalysisSecurityGroupRule m_securityGroupRule;
321 bool m_securityGroupRuleHasBeenSet = false;
322
323 AnalysisComponent m_sourceVpc;
324 bool m_sourceVpcHasBeenSet = false;
325
326 AnalysisComponent m_subnet;
327 bool m_subnetHasBeenSet = false;
328
329 AnalysisComponent m_vpc;
330 bool m_vpcHasBeenSet = false;
331
332 Aws::Vector<AdditionalDetail> m_additionalDetails;
333 bool m_additionalDetailsHasBeenSet = false;
334
335 AnalysisComponent m_transitGateway;
336 bool m_transitGatewayHasBeenSet = false;
337
338 TransitGatewayRouteTableRoute m_transitGatewayRouteTableRoute;
339 bool m_transitGatewayRouteTableRouteHasBeenSet = false;
340
341 Aws::Vector<Explanation> m_explanations;
342 bool m_explanationsHasBeenSet = false;
343
344 AnalysisComponent m_elasticLoadBalancerListener;
345 bool m_elasticLoadBalancerListenerHasBeenSet = false;
346
347 FirewallStatelessRule m_firewallStatelessRule;
348 bool m_firewallStatelessRuleHasBeenSet = false;
349
350 FirewallStatefulRule m_firewallStatefulRule;
351 bool m_firewallStatefulRuleHasBeenSet = false;
352
353 Aws::String m_serviceName;
354 bool m_serviceNameHasBeenSet = false;
355 };
356
357} // namespace Model
358} // namespace EC2
359} // namespace Aws
void SetTransitGateway(TransitGatewayT &&value)
void SetOutboundHeader(OutboundHeaderT &&value)
PathComponent & WithFirewallStatelessRule(FirewallStatelessRuleT &&value)
const FirewallStatelessRule & GetFirewallStatelessRule() const
PathComponent & WithComponent(ComponentT &&value)
void SetAdditionalDetails(AdditionalDetailsT &&value)
const AnalysisComponent & GetComponent() const
const AnalysisComponent & GetElasticLoadBalancerListener() const
PathComponent & WithElasticLoadBalancerListener(ElasticLoadBalancerListenerT &&value)
PathComponent & WithSequenceNumber(int value)
PathComponent & WithDestinationVpc(DestinationVpcT &&value)
void SetAclRule(AclRuleT &&value)
AWS_EC2_API PathComponent & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const AnalysisAclRule & GetAclRule() const
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
PathComponent & WithSecurityGroupRule(SecurityGroupRuleT &&value)
bool FirewallStatelessRuleHasBeenSet() const
void SetFirewallStatefulRule(FirewallStatefulRuleT &&value)
void SetSourceVpc(SourceVpcT &&value)
PathComponent & WithAttachedTo(AttachedToT &&value)
const Aws::Vector< AdditionalDetail > & GetAdditionalDetails() const
const AnalysisPacketHeader & GetOutboundHeader() const
PathComponent & WithVpc(VpcT &&value)
void SetExplanations(ExplanationsT &&value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const FirewallStatefulRule & GetFirewallStatefulRule() const
const AnalysisComponent & GetTransitGateway() const
PathComponent & WithInboundHeader(InboundHeaderT &&value)
void SetSubnet(SubnetT &&value)
PathComponent & AddExplanations(ExplanationsT &&value)
void SetRouteTableRoute(RouteTableRouteT &&value)
const AnalysisComponent & GetSourceVpc() const
void SetDestinationVpc(DestinationVpcT &&value)
PathComponent & WithExplanations(ExplanationsT &&value)
void SetFirewallStatelessRule(FirewallStatelessRuleT &&value)
PathComponent & WithAdditionalDetails(AdditionalDetailsT &&value)
AWS_EC2_API PathComponent(const Aws::Utils::Xml::XmlNode &xmlNode)
const AnalysisComponent & GetDestinationVpc() const
PathComponent & AddAdditionalDetails(AdditionalDetailsT &&value)
const Aws::Vector< Explanation > & GetExplanations() const
PathComponent & WithFirewallStatefulRule(FirewallStatefulRuleT &&value)
void SetComponent(ComponentT &&value)
void SetSecurityGroupRule(SecurityGroupRuleT &&value)
PathComponent & WithAclRule(AclRuleT &&value)
PathComponent & WithServiceName(ServiceNameT &&value)
void SetTransitGatewayRouteTableRoute(TransitGatewayRouteTableRouteT &&value)
const AnalysisComponent & GetVpc() const
bool ElasticLoadBalancerListenerHasBeenSet() const
const AnalysisComponent & GetAttachedTo() const
bool FirewallStatefulRuleHasBeenSet() const
AWS_EC2_API PathComponent()=default
PathComponent & WithTransitGateway(TransitGatewayT &&value)
void SetInboundHeader(InboundHeaderT &&value)
const TransitGatewayRouteTableRoute & GetTransitGatewayRouteTableRoute() const
void SetElasticLoadBalancerListener(ElasticLoadBalancerListenerT &&value)
void SetServiceName(ServiceNameT &&value)
PathComponent & WithTransitGatewayRouteTableRoute(TransitGatewayRouteTableRouteT &&value)
PathComponent & WithSourceVpc(SourceVpcT &&value)
PathComponent & WithOutboundHeader(OutboundHeaderT &&value)
const AnalysisSecurityGroupRule & GetSecurityGroupRule() const
PathComponent & WithSubnet(SubnetT &&value)
void SetAttachedTo(AttachedToT &&value)
const Aws::String & GetServiceName() const
const AnalysisPacketHeader & GetInboundHeader() const
const AnalysisRouteTableRoute & GetRouteTableRoute() const
PathComponent & WithRouteTableRoute(RouteTableRouteT &&value)
const AnalysisComponent & GetSubnet() const
bool TransitGatewayRouteTableRouteHasBeenSet() const
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