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>
59 inline void SetSequenceNumber(
int value) { m_sequenceNumberHasBeenSet =
true; m_sequenceNumber = value; }
69 template<
typename AclRuleT = AnalysisAclRule>
70 void SetAclRule(AclRuleT&& value) { m_aclRuleHasBeenSet =
true; m_aclRule = std::forward<AclRuleT>(value); }
71 template<
typename AclRuleT = AnalysisAclRule>
81 template<
typename AttachedToT = AnalysisComponent>
82 void SetAttachedTo(AttachedToT&& value) { m_attachedToHasBeenSet =
true; m_attachedTo = std::forward<AttachedToT>(value); }
83 template<
typename AttachedToT = AnalysisComponent>
93 template<
typename ComponentT = AnalysisComponent>
94 void SetComponent(ComponentT&& value) { m_componentHasBeenSet =
true; m_component = std::forward<ComponentT>(value); }
95 template<
typename ComponentT = AnalysisComponent>
105 template<
typename DestinationVpcT = AnalysisComponent>
106 void SetDestinationVpc(DestinationVpcT&& value) { m_destinationVpcHasBeenSet =
true; m_destinationVpc = std::forward<DestinationVpcT>(value); }
107 template<
typename DestinationVpcT = AnalysisComponent>
117 template<
typename OutboundHeaderT = AnalysisPacketHeader>
118 void SetOutboundHeader(OutboundHeaderT&& value) { m_outboundHeaderHasBeenSet =
true; m_outboundHeader = std::forward<OutboundHeaderT>(value); }
119 template<
typename OutboundHeaderT = AnalysisPacketHeader>
129 template<
typename InboundHeaderT = AnalysisPacketHeader>
130 void SetInboundHeader(InboundHeaderT&& value) { m_inboundHeaderHasBeenSet =
true; m_inboundHeader = std::forward<InboundHeaderT>(value); }
131 template<
typename InboundHeaderT = AnalysisPacketHeader>
141 template<
typename RouteTableRouteT = AnalysisRouteTableRoute>
142 void SetRouteTableRoute(RouteTableRouteT&& value) { m_routeTableRouteHasBeenSet =
true; m_routeTableRoute = std::forward<RouteTableRouteT>(value); }
143 template<
typename RouteTableRouteT = AnalysisRouteTableRoute>
153 template<
typename SecurityGroupRuleT = AnalysisSecurityGroupRule>
154 void SetSecurityGroupRule(SecurityGroupRuleT&& value) { m_securityGroupRuleHasBeenSet =
true; m_securityGroupRule = std::forward<SecurityGroupRuleT>(value); }
155 template<
typename SecurityGroupRuleT = AnalysisSecurityGroupRule>
165 template<
typename SourceVpcT = AnalysisComponent>
166 void SetSourceVpc(SourceVpcT&& value) { m_sourceVpcHasBeenSet =
true; m_sourceVpc = std::forward<SourceVpcT>(value); }
167 template<
typename SourceVpcT = AnalysisComponent>
177 template<
typename SubnetT = AnalysisComponent>
178 void SetSubnet(SubnetT&& value) { m_subnetHasBeenSet =
true; m_subnet = std::forward<SubnetT>(value); }
179 template<
typename SubnetT = AnalysisComponent>
189 template<
typename VpcT = AnalysisComponent>
190 void SetVpc(VpcT&& value) { m_vpcHasBeenSet =
true; m_vpc = std::forward<VpcT>(value); }
191 template<
typename VpcT = AnalysisComponent>
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>>
205 template<
typename AdditionalDetailsT = AdditionalDetail>
206 PathComponent&
AddAdditionalDetails(AdditionalDetailsT&& value) { m_additionalDetailsHasBeenSet =
true; m_additionalDetails.emplace_back(std::forward<AdditionalDetailsT>(value));
return *
this; }
215 template<
typename TransitGatewayT = AnalysisComponent>
216 void SetTransitGateway(TransitGatewayT&& value) { m_transitGatewayHasBeenSet =
true; m_transitGateway = std::forward<TransitGatewayT>(value); }
217 template<
typename TransitGatewayT = AnalysisComponent>
227 template<
typename TransitGatewayRouteTableRouteT = TransitGatewayRouteTableRoute>
228 void SetTransitGatewayRouteTableRoute(TransitGatewayRouteTableRouteT&& value) { m_transitGatewayRouteTableRouteHasBeenSet =
true; m_transitGatewayRouteTableRoute = std::forward<TransitGatewayRouteTableRouteT>(value); }
229 template<
typename TransitGatewayRouteTableRouteT = TransitGatewayRouteTableRoute>
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>>
243 template<
typename ExplanationsT = Explanation>
244 PathComponent&
AddExplanations(ExplanationsT&& value) { m_explanationsHasBeenSet =
true; m_explanations.emplace_back(std::forward<ExplanationsT>(value));
return *
this; }
253 template<
typename ElasticLoadBalancerListenerT = AnalysisComponent>
254 void SetElasticLoadBalancerListener(ElasticLoadBalancerListenerT&& value) { m_elasticLoadBalancerListenerHasBeenSet =
true; m_elasticLoadBalancerListener = std::forward<ElasticLoadBalancerListenerT>(value); }
255 template<
typename ElasticLoadBalancerListenerT = AnalysisComponent>
265 template<
typename FirewallStatelessRuleT = FirewallStatelessRule>
266 void SetFirewallStatelessRule(FirewallStatelessRuleT&& value) { m_firewallStatelessRuleHasBeenSet =
true; m_firewallStatelessRule = std::forward<FirewallStatelessRuleT>(value); }
267 template<
typename FirewallStatelessRuleT = FirewallStatelessRule>
277 template<
typename FirewallStatefulRuleT = FirewallStatefulRule>
278 void SetFirewallStatefulRule(FirewallStatefulRuleT&& value) { m_firewallStatefulRuleHasBeenSet =
true; m_firewallStatefulRule = std::forward<FirewallStatefulRuleT>(value); }
279 template<
typename FirewallStatefulRuleT = FirewallStatefulRule>
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>
296 int m_sequenceNumber{0};
297 bool m_sequenceNumberHasBeenSet =
false;
299 AnalysisAclRule m_aclRule;
300 bool m_aclRuleHasBeenSet =
false;
302 AnalysisComponent m_attachedTo;
303 bool m_attachedToHasBeenSet =
false;
305 AnalysisComponent m_component;
306 bool m_componentHasBeenSet =
false;
308 AnalysisComponent m_destinationVpc;
309 bool m_destinationVpcHasBeenSet =
false;
311 AnalysisPacketHeader m_outboundHeader;
312 bool m_outboundHeaderHasBeenSet =
false;
314 AnalysisPacketHeader m_inboundHeader;
315 bool m_inboundHeaderHasBeenSet =
false;
317 AnalysisRouteTableRoute m_routeTableRoute;
318 bool m_routeTableRouteHasBeenSet =
false;
320 AnalysisSecurityGroupRule m_securityGroupRule;
321 bool m_securityGroupRuleHasBeenSet =
false;
323 AnalysisComponent m_sourceVpc;
324 bool m_sourceVpcHasBeenSet =
false;
326 AnalysisComponent m_subnet;
327 bool m_subnetHasBeenSet =
false;
329 AnalysisComponent m_vpc;
330 bool m_vpcHasBeenSet =
false;
333 bool m_additionalDetailsHasBeenSet =
false;
335 AnalysisComponent m_transitGateway;
336 bool m_transitGatewayHasBeenSet =
false;
338 TransitGatewayRouteTableRoute m_transitGatewayRouteTableRoute;
339 bool m_transitGatewayRouteTableRouteHasBeenSet =
false;
342 bool m_explanationsHasBeenSet =
false;
344 AnalysisComponent m_elasticLoadBalancerListener;
345 bool m_elasticLoadBalancerListenerHasBeenSet =
false;
347 FirewallStatelessRule m_firewallStatelessRule;
348 bool m_firewallStatelessRuleHasBeenSet =
false;
350 FirewallStatefulRule m_firewallStatefulRule;
351 bool m_firewallStatefulRuleHasBeenSet =
false;
354 bool m_serviceNameHasBeenSet =
false;
void SetTransitGateway(TransitGatewayT &&value)
void SetOutboundHeader(OutboundHeaderT &&value)
PathComponent & WithFirewallStatelessRule(FirewallStatelessRuleT &&value)
const FirewallStatelessRule & GetFirewallStatelessRule() const
PathComponent & WithComponent(ComponentT &&value)
bool SourceVpcHasBeenSet() const
void SetAdditionalDetails(AdditionalDetailsT &&value)
const AnalysisComponent & GetComponent() const
const AnalysisComponent & GetElasticLoadBalancerListener() const
PathComponent & WithElasticLoadBalancerListener(ElasticLoadBalancerListenerT &&value)
void SetVpc(VpcT &&value)
PathComponent & WithSequenceNumber(int value)
PathComponent & WithDestinationVpc(DestinationVpcT &&value)
bool OutboundHeaderHasBeenSet() const
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
bool AdditionalDetailsHasBeenSet() const
PathComponent & WithInboundHeader(InboundHeaderT &&value)
void SetSubnet(SubnetT &&value)
PathComponent & AddExplanations(ExplanationsT &&value)
void SetRouteTableRoute(RouteTableRouteT &&value)
const AnalysisComponent & GetSourceVpc() const
bool TransitGatewayHasBeenSet() 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
bool SubnetHasBeenSet() const
PathComponent & WithFirewallStatefulRule(FirewallStatefulRuleT &&value)
void SetComponent(ComponentT &&value)
void SetSecurityGroupRule(SecurityGroupRuleT &&value)
PathComponent & WithAclRule(AclRuleT &&value)
PathComponent & WithServiceName(ServiceNameT &&value)
bool ComponentHasBeenSet() const
bool ExplanationsHasBeenSet() const
void SetTransitGatewayRouteTableRoute(TransitGatewayRouteTableRouteT &&value)
bool SequenceNumberHasBeenSet() const
const AnalysisComponent & GetVpc() const
bool InboundHeaderHasBeenSet() 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)
int GetSequenceNumber() const
PathComponent & WithOutboundHeader(OutboundHeaderT &&value)
const AnalysisSecurityGroupRule & GetSecurityGroupRule() const
PathComponent & WithSubnet(SubnetT &&value)
void SetAttachedTo(AttachedToT &&value)
bool DestinationVpcHasBeenSet() const
void SetSequenceNumber(int value)
const Aws::String & GetServiceName() const
const AnalysisPacketHeader & GetInboundHeader() const
const AnalysisRouteTableRoute & GetRouteTableRoute() const
PathComponent & WithRouteTableRoute(RouteTableRouteT &&value)
bool ServiceNameHasBeenSet() const
const AnalysisComponent & GetSubnet() const
bool SecurityGroupRuleHasBeenSet() const
bool RouteTableRouteHasBeenSet() const
bool AclRuleHasBeenSet() const
bool VpcHasBeenSet() const
bool TransitGatewayRouteTableRouteHasBeenSet() const
bool AttachedToHasBeenSet() 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