AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
AwsVpcConfiguration.h
1
6#pragma once
7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ecs/model/AssignPublicIp.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace ECS
24{
25namespace Model
26{
27
37 {
38 public:
39 AWS_ECS_API AwsVpcConfiguration() = default;
43
44
46
51 inline const Aws::Vector<Aws::String>& GetSubnets() const { return m_subnets; }
52 inline bool SubnetsHasBeenSet() const { return m_subnetsHasBeenSet; }
53 template<typename SubnetsT = Aws::Vector<Aws::String>>
54 void SetSubnets(SubnetsT&& value) { m_subnetsHasBeenSet = true; m_subnets = std::forward<SubnetsT>(value); }
55 template<typename SubnetsT = Aws::Vector<Aws::String>>
56 AwsVpcConfiguration& WithSubnets(SubnetsT&& value) { SetSubnets(std::forward<SubnetsT>(value)); return *this;}
57 template<typename SubnetsT = Aws::String>
58 AwsVpcConfiguration& AddSubnets(SubnetsT&& value) { m_subnetsHasBeenSet = true; m_subnets.emplace_back(std::forward<SubnetsT>(value)); return *this; }
60
62
68 inline const Aws::Vector<Aws::String>& GetSecurityGroups() const { return m_securityGroups; }
69 inline bool SecurityGroupsHasBeenSet() const { return m_securityGroupsHasBeenSet; }
70 template<typename SecurityGroupsT = Aws::Vector<Aws::String>>
71 void SetSecurityGroups(SecurityGroupsT&& value) { m_securityGroupsHasBeenSet = true; m_securityGroups = std::forward<SecurityGroupsT>(value); }
72 template<typename SecurityGroupsT = Aws::Vector<Aws::String>>
73 AwsVpcConfiguration& WithSecurityGroups(SecurityGroupsT&& value) { SetSecurityGroups(std::forward<SecurityGroupsT>(value)); return *this;}
74 template<typename SecurityGroupsT = Aws::String>
75 AwsVpcConfiguration& AddSecurityGroups(SecurityGroupsT&& value) { m_securityGroupsHasBeenSet = true; m_securityGroups.emplace_back(std::forward<SecurityGroupsT>(value)); return *this; }
77
79
87 inline AssignPublicIp GetAssignPublicIp() const { return m_assignPublicIp; }
88 inline bool AssignPublicIpHasBeenSet() const { return m_assignPublicIpHasBeenSet; }
89 inline void SetAssignPublicIp(AssignPublicIp value) { m_assignPublicIpHasBeenSet = true; m_assignPublicIp = value; }
92 private:
93
95 bool m_subnetsHasBeenSet = false;
96
97 Aws::Vector<Aws::String> m_securityGroups;
98 bool m_securityGroupsHasBeenSet = false;
99
100 AssignPublicIp m_assignPublicIp{AssignPublicIp::NOT_SET};
101 bool m_assignPublicIpHasBeenSet = false;
102 };
103
104} // namespace Model
105} // namespace ECS
106} // namespace Aws
AwsVpcConfiguration & WithSubnets(SubnetsT &&value)
void SetAssignPublicIp(AssignPublicIp value)
AWS_ECS_API AwsVpcConfiguration()=default
AWS_ECS_API AwsVpcConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AwsVpcConfiguration & AddSecurityGroups(SecurityGroupsT &&value)
AWS_ECS_API AwsVpcConfiguration(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetSecurityGroups() const
const Aws::Vector< Aws::String > & GetSubnets() const
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
AwsVpcConfiguration & AddSubnets(SubnetsT &&value)
AwsVpcConfiguration & WithAssignPublicIp(AssignPublicIp value)
AwsVpcConfiguration & WithSecurityGroups(SecurityGroupsT &&value)
void SetSecurityGroups(SecurityGroupsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue