AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
AwsVpcConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/scheduler/Scheduler_EXPORTS.h>
10#include <aws/scheduler/model/AssignPublicIp.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Scheduler {
22namespace Model {
23
32 public:
33 AWS_SCHEDULER_API AwsVpcConfiguration() = default;
34 AWS_SCHEDULER_API AwsVpcConfiguration(Aws::Utils::Json::JsonView jsonValue);
36 AWS_SCHEDULER_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
44 inline AssignPublicIp GetAssignPublicIp() const { return m_assignPublicIp; }
45 inline bool AssignPublicIpHasBeenSet() const { return m_assignPublicIpHasBeenSet; }
46 inline void SetAssignPublicIp(AssignPublicIp value) {
47 m_assignPublicIpHasBeenSet = true;
48 m_assignPublicIp = value;
49 }
51 SetAssignPublicIp(value);
52 return *this;
53 }
55
57
63 inline const Aws::Vector<Aws::String>& GetSecurityGroups() const { return m_securityGroups; }
64 inline bool SecurityGroupsHasBeenSet() const { return m_securityGroupsHasBeenSet; }
65 template <typename SecurityGroupsT = Aws::Vector<Aws::String>>
66 void SetSecurityGroups(SecurityGroupsT&& value) {
67 m_securityGroupsHasBeenSet = true;
68 m_securityGroups = std::forward<SecurityGroupsT>(value);
69 }
70 template <typename SecurityGroupsT = Aws::Vector<Aws::String>>
71 AwsVpcConfiguration& WithSecurityGroups(SecurityGroupsT&& value) {
72 SetSecurityGroups(std::forward<SecurityGroupsT>(value));
73 return *this;
74 }
75 template <typename SecurityGroupsT = Aws::String>
76 AwsVpcConfiguration& AddSecurityGroups(SecurityGroupsT&& value) {
77 m_securityGroupsHasBeenSet = true;
78 m_securityGroups.emplace_back(std::forward<SecurityGroupsT>(value));
79 return *this;
80 }
82
84
88 inline const Aws::Vector<Aws::String>& GetSubnets() const { return m_subnets; }
89 inline bool SubnetsHasBeenSet() const { return m_subnetsHasBeenSet; }
90 template <typename SubnetsT = Aws::Vector<Aws::String>>
91 void SetSubnets(SubnetsT&& value) {
92 m_subnetsHasBeenSet = true;
93 m_subnets = std::forward<SubnetsT>(value);
94 }
95 template <typename SubnetsT = Aws::Vector<Aws::String>>
96 AwsVpcConfiguration& WithSubnets(SubnetsT&& value) {
97 SetSubnets(std::forward<SubnetsT>(value));
98 return *this;
99 }
100 template <typename SubnetsT = Aws::String>
101 AwsVpcConfiguration& AddSubnets(SubnetsT&& value) {
102 m_subnetsHasBeenSet = true;
103 m_subnets.emplace_back(std::forward<SubnetsT>(value));
104 return *this;
105 }
107 private:
108 AssignPublicIp m_assignPublicIp{AssignPublicIp::NOT_SET};
109
110 Aws::Vector<Aws::String> m_securityGroups;
111
112 Aws::Vector<Aws::String> m_subnets;
113 bool m_assignPublicIpHasBeenSet = false;
114 bool m_securityGroupsHasBeenSet = false;
115 bool m_subnetsHasBeenSet = false;
116};
117
118} // namespace Model
119} // namespace Scheduler
120} // namespace Aws
AwsVpcConfiguration & WithAssignPublicIp(AssignPublicIp value)
AWS_SCHEDULER_API AwsVpcConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
AwsVpcConfiguration & WithSecurityGroups(SecurityGroupsT &&value)
AWS_SCHEDULER_API AwsVpcConfiguration()=default
AwsVpcConfiguration & WithSubnets(SubnetsT &&value)
AwsVpcConfiguration & AddSubnets(SubnetsT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroups() const
void SetSecurityGroups(SecurityGroupsT &&value)
AWS_SCHEDULER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_SCHEDULER_API AwsVpcConfiguration(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetSubnets() const
AwsVpcConfiguration & AddSecurityGroups(SecurityGroupsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue