AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
EndpointAccess.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
11#include <aws/redshift-serverless/model/VpcEndpoint.h>
12#include <aws/redshift-serverless/model/VpcSecurityGroupMembership.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace RedshiftServerless {
24namespace Model {
25
33 public:
34 AWS_REDSHIFTSERVERLESS_API EndpointAccess() = default;
35 AWS_REDSHIFTSERVERLESS_API EndpointAccess(Aws::Utils::Json::JsonView jsonValue);
36 AWS_REDSHIFTSERVERLESS_API EndpointAccess& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetAddress() const { return m_address; }
44 inline bool AddressHasBeenSet() const { return m_addressHasBeenSet; }
45 template <typename AddressT = Aws::String>
46 void SetAddress(AddressT&& value) {
47 m_addressHasBeenSet = true;
48 m_address = std::forward<AddressT>(value);
49 }
50 template <typename AddressT = Aws::String>
51 EndpointAccess& WithAddress(AddressT&& value) {
52 SetAddress(std::forward<AddressT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::String& GetEndpointArn() const { return m_endpointArn; }
62 inline bool EndpointArnHasBeenSet() const { return m_endpointArnHasBeenSet; }
63 template <typename EndpointArnT = Aws::String>
64 void SetEndpointArn(EndpointArnT&& value) {
65 m_endpointArnHasBeenSet = true;
66 m_endpointArn = std::forward<EndpointArnT>(value);
67 }
68 template <typename EndpointArnT = Aws::String>
69 EndpointAccess& WithEndpointArn(EndpointArnT&& value) {
70 SetEndpointArn(std::forward<EndpointArnT>(value));
71 return *this;
72 }
74
76
79 inline const Aws::Utils::DateTime& GetEndpointCreateTime() const { return m_endpointCreateTime; }
80 inline bool EndpointCreateTimeHasBeenSet() const { return m_endpointCreateTimeHasBeenSet; }
81 template <typename EndpointCreateTimeT = Aws::Utils::DateTime>
82 void SetEndpointCreateTime(EndpointCreateTimeT&& value) {
83 m_endpointCreateTimeHasBeenSet = true;
84 m_endpointCreateTime = std::forward<EndpointCreateTimeT>(value);
85 }
86 template <typename EndpointCreateTimeT = Aws::Utils::DateTime>
87 EndpointAccess& WithEndpointCreateTime(EndpointCreateTimeT&& value) {
88 SetEndpointCreateTime(std::forward<EndpointCreateTimeT>(value));
89 return *this;
90 }
92
94
97 inline const Aws::String& GetEndpointName() const { return m_endpointName; }
98 inline bool EndpointNameHasBeenSet() const { return m_endpointNameHasBeenSet; }
99 template <typename EndpointNameT = Aws::String>
100 void SetEndpointName(EndpointNameT&& value) {
101 m_endpointNameHasBeenSet = true;
102 m_endpointName = std::forward<EndpointNameT>(value);
103 }
104 template <typename EndpointNameT = Aws::String>
105 EndpointAccess& WithEndpointName(EndpointNameT&& value) {
106 SetEndpointName(std::forward<EndpointNameT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::String& GetEndpointStatus() const { return m_endpointStatus; }
116 inline bool EndpointStatusHasBeenSet() const { return m_endpointStatusHasBeenSet; }
117 template <typename EndpointStatusT = Aws::String>
118 void SetEndpointStatus(EndpointStatusT&& value) {
119 m_endpointStatusHasBeenSet = true;
120 m_endpointStatus = std::forward<EndpointStatusT>(value);
121 }
122 template <typename EndpointStatusT = Aws::String>
123 EndpointAccess& WithEndpointStatus(EndpointStatusT&& value) {
124 SetEndpointStatus(std::forward<EndpointStatusT>(value));
125 return *this;
126 }
128
130
134 inline int GetPort() const { return m_port; }
135 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
136 inline void SetPort(int value) {
137 m_portHasBeenSet = true;
138 m_port = value;
139 }
140 inline EndpointAccess& WithPort(int value) {
141 SetPort(value);
142 return *this;
143 }
145
147
151 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
152 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
153 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
154 void SetSubnetIds(SubnetIdsT&& value) {
155 m_subnetIdsHasBeenSet = true;
156 m_subnetIds = std::forward<SubnetIdsT>(value);
157 }
158 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
159 EndpointAccess& WithSubnetIds(SubnetIdsT&& value) {
160 SetSubnetIds(std::forward<SubnetIdsT>(value));
161 return *this;
162 }
163 template <typename SubnetIdsT = Aws::String>
164 EndpointAccess& AddSubnetIds(SubnetIdsT&& value) {
165 m_subnetIdsHasBeenSet = true;
166 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
167 return *this;
168 }
170
172
175 inline const VpcEndpoint& GetVpcEndpoint() const { return m_vpcEndpoint; }
176 inline bool VpcEndpointHasBeenSet() const { return m_vpcEndpointHasBeenSet; }
177 template <typename VpcEndpointT = VpcEndpoint>
178 void SetVpcEndpoint(VpcEndpointT&& value) {
179 m_vpcEndpointHasBeenSet = true;
180 m_vpcEndpoint = std::forward<VpcEndpointT>(value);
181 }
182 template <typename VpcEndpointT = VpcEndpoint>
183 EndpointAccess& WithVpcEndpoint(VpcEndpointT&& value) {
184 SetVpcEndpoint(std::forward<VpcEndpointT>(value));
185 return *this;
186 }
188
190
193 inline const Aws::Vector<VpcSecurityGroupMembership>& GetVpcSecurityGroups() const { return m_vpcSecurityGroups; }
194 inline bool VpcSecurityGroupsHasBeenSet() const { return m_vpcSecurityGroupsHasBeenSet; }
195 template <typename VpcSecurityGroupsT = Aws::Vector<VpcSecurityGroupMembership>>
196 void SetVpcSecurityGroups(VpcSecurityGroupsT&& value) {
197 m_vpcSecurityGroupsHasBeenSet = true;
198 m_vpcSecurityGroups = std::forward<VpcSecurityGroupsT>(value);
199 }
200 template <typename VpcSecurityGroupsT = Aws::Vector<VpcSecurityGroupMembership>>
201 EndpointAccess& WithVpcSecurityGroups(VpcSecurityGroupsT&& value) {
202 SetVpcSecurityGroups(std::forward<VpcSecurityGroupsT>(value));
203 return *this;
204 }
205 template <typename VpcSecurityGroupsT = VpcSecurityGroupMembership>
206 EndpointAccess& AddVpcSecurityGroups(VpcSecurityGroupsT&& value) {
207 m_vpcSecurityGroupsHasBeenSet = true;
208 m_vpcSecurityGroups.emplace_back(std::forward<VpcSecurityGroupsT>(value));
209 return *this;
210 }
212
214
217 inline const Aws::String& GetWorkgroupName() const { return m_workgroupName; }
218 inline bool WorkgroupNameHasBeenSet() const { return m_workgroupNameHasBeenSet; }
219 template <typename WorkgroupNameT = Aws::String>
220 void SetWorkgroupName(WorkgroupNameT&& value) {
221 m_workgroupNameHasBeenSet = true;
222 m_workgroupName = std::forward<WorkgroupNameT>(value);
223 }
224 template <typename WorkgroupNameT = Aws::String>
225 EndpointAccess& WithWorkgroupName(WorkgroupNameT&& value) {
226 SetWorkgroupName(std::forward<WorkgroupNameT>(value));
227 return *this;
228 }
230 private:
231 Aws::String m_address;
232
233 Aws::String m_endpointArn;
234
235 Aws::Utils::DateTime m_endpointCreateTime{};
236
237 Aws::String m_endpointName;
238
239 Aws::String m_endpointStatus;
240
241 int m_port{0};
242
243 Aws::Vector<Aws::String> m_subnetIds;
244
245 VpcEndpoint m_vpcEndpoint;
246
247 Aws::Vector<VpcSecurityGroupMembership> m_vpcSecurityGroups;
248
249 Aws::String m_workgroupName;
250 bool m_addressHasBeenSet = false;
251 bool m_endpointArnHasBeenSet = false;
252 bool m_endpointCreateTimeHasBeenSet = false;
253 bool m_endpointNameHasBeenSet = false;
254 bool m_endpointStatusHasBeenSet = false;
255 bool m_portHasBeenSet = false;
256 bool m_subnetIdsHasBeenSet = false;
257 bool m_vpcEndpointHasBeenSet = false;
258 bool m_vpcSecurityGroupsHasBeenSet = false;
259 bool m_workgroupNameHasBeenSet = false;
260};
261
262} // namespace Model
263} // namespace RedshiftServerless
264} // namespace Aws
AWS_REDSHIFTSERVERLESS_API EndpointAccess()=default
AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
EndpointAccess & WithVpcSecurityGroups(VpcSecurityGroupsT &&value)
EndpointAccess & AddVpcSecurityGroups(VpcSecurityGroupsT &&value)
void SetEndpointStatus(EndpointStatusT &&value)
EndpointAccess & WithVpcEndpoint(VpcEndpointT &&value)
void SetWorkgroupName(WorkgroupNameT &&value)
const Aws::Vector< VpcSecurityGroupMembership > & GetVpcSecurityGroups() const
EndpointAccess & WithEndpointCreateTime(EndpointCreateTimeT &&value)
void SetVpcSecurityGroups(VpcSecurityGroupsT &&value)
EndpointAccess & WithSubnetIds(SubnetIdsT &&value)
EndpointAccess & WithEndpointName(EndpointNameT &&value)
void SetEndpointCreateTime(EndpointCreateTimeT &&value)
EndpointAccess & AddSubnetIds(SubnetIdsT &&value)
AWS_REDSHIFTSERVERLESS_API EndpointAccess(Aws::Utils::Json::JsonView jsonValue)
AWS_REDSHIFTSERVERLESS_API EndpointAccess & operator=(Aws::Utils::Json::JsonView jsonValue)
EndpointAccess & WithWorkgroupName(WorkgroupNameT &&value)
const Aws::Utils::DateTime & GetEndpointCreateTime() const
const Aws::Vector< Aws::String > & GetSubnetIds() const
EndpointAccess & WithEndpointArn(EndpointArnT &&value)
EndpointAccess & WithAddress(AddressT &&value)
EndpointAccess & WithEndpointStatus(EndpointStatusT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue