AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ResolverEndpoint.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/route53resolver/Route53Resolver_EXPORTS.h>
10#include <aws/route53resolver/model/Protocol.h>
11#include <aws/route53resolver/model/ResolverEndpointDirection.h>
12#include <aws/route53resolver/model/ResolverEndpointStatus.h>
13#include <aws/route53resolver/model/ResolverEndpointType.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Route53Resolver {
25namespace Model {
26
42 public:
43 AWS_ROUTE53RESOLVER_API ResolverEndpoint() = default;
44 AWS_ROUTE53RESOLVER_API ResolverEndpoint(Aws::Utils::Json::JsonView jsonValue);
45 AWS_ROUTE53RESOLVER_API ResolverEndpoint& operator=(Aws::Utils::Json::JsonView jsonValue);
46 AWS_ROUTE53RESOLVER_API Aws::Utils::Json::JsonValue Jsonize() const;
47
49
52 inline const Aws::String& GetId() const { return m_id; }
53 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
54 template <typename IdT = Aws::String>
55 void SetId(IdT&& value) {
56 m_idHasBeenSet = true;
57 m_id = std::forward<IdT>(value);
58 }
59 template <typename IdT = Aws::String>
60 ResolverEndpoint& WithId(IdT&& value) {
61 SetId(std::forward<IdT>(value));
62 return *this;
63 }
65
67
72 inline const Aws::String& GetCreatorRequestId() const { return m_creatorRequestId; }
73 inline bool CreatorRequestIdHasBeenSet() const { return m_creatorRequestIdHasBeenSet; }
74 template <typename CreatorRequestIdT = Aws::String>
75 void SetCreatorRequestId(CreatorRequestIdT&& value) {
76 m_creatorRequestIdHasBeenSet = true;
77 m_creatorRequestId = std::forward<CreatorRequestIdT>(value);
78 }
79 template <typename CreatorRequestIdT = Aws::String>
80 ResolverEndpoint& WithCreatorRequestId(CreatorRequestIdT&& value) {
81 SetCreatorRequestId(std::forward<CreatorRequestIdT>(value));
82 return *this;
83 }
85
87
90 inline const Aws::String& GetArn() const { return m_arn; }
91 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
92 template <typename ArnT = Aws::String>
93 void SetArn(ArnT&& value) {
94 m_arnHasBeenSet = true;
95 m_arn = std::forward<ArnT>(value);
96 }
97 template <typename ArnT = Aws::String>
98 ResolverEndpoint& WithArn(ArnT&& value) {
99 SetArn(std::forward<ArnT>(value));
100 return *this;
101 }
103
105
110 inline const Aws::String& GetName() const { return m_name; }
111 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
112 template <typename NameT = Aws::String>
113 void SetName(NameT&& value) {
114 m_nameHasBeenSet = true;
115 m_name = std::forward<NameT>(value);
116 }
117 template <typename NameT = Aws::String>
118 ResolverEndpoint& WithName(NameT&& value) {
119 SetName(std::forward<NameT>(value));
120 return *this;
121 }
123
125
132 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
133 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
134 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
135 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
136 m_securityGroupIdsHasBeenSet = true;
137 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
138 }
139 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
140 ResolverEndpoint& WithSecurityGroupIds(SecurityGroupIdsT&& value) {
141 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
142 return *this;
143 }
144 template <typename SecurityGroupIdsT = Aws::String>
145 ResolverEndpoint& AddSecurityGroupIds(SecurityGroupIdsT&& value) {
146 m_securityGroupIdsHasBeenSet = true;
147 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
148 return *this;
149 }
151
153
161 inline ResolverEndpointDirection GetDirection() const { return m_direction; }
162 inline bool DirectionHasBeenSet() const { return m_directionHasBeenSet; }
164 m_directionHasBeenSet = true;
165 m_direction = value;
166 }
168 SetDirection(value);
169 return *this;
170 }
172
174
178 inline int GetIpAddressCount() const { return m_ipAddressCount; }
179 inline bool IpAddressCountHasBeenSet() const { return m_ipAddressCountHasBeenSet; }
180 inline void SetIpAddressCount(int value) {
181 m_ipAddressCountHasBeenSet = true;
182 m_ipAddressCount = value;
183 }
185 SetIpAddressCount(value);
186 return *this;
187 }
189
191
194 inline const Aws::String& GetHostVPCId() const { return m_hostVPCId; }
195 inline bool HostVPCIdHasBeenSet() const { return m_hostVPCIdHasBeenSet; }
196 template <typename HostVPCIdT = Aws::String>
197 void SetHostVPCId(HostVPCIdT&& value) {
198 m_hostVPCIdHasBeenSet = true;
199 m_hostVPCId = std::forward<HostVPCIdT>(value);
200 }
201 template <typename HostVPCIdT = Aws::String>
202 ResolverEndpoint& WithHostVPCId(HostVPCIdT&& value) {
203 SetHostVPCId(std::forward<HostVPCIdT>(value));
204 return *this;
205 }
207
209
238 inline ResolverEndpointStatus GetStatus() const { return m_status; }
239 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
241 m_statusHasBeenSet = true;
242 m_status = value;
243 }
245 SetStatus(value);
246 return *this;
247 }
249
251
254 inline const Aws::String& GetStatusMessage() const { return m_statusMessage; }
255 inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; }
256 template <typename StatusMessageT = Aws::String>
257 void SetStatusMessage(StatusMessageT&& value) {
258 m_statusMessageHasBeenSet = true;
259 m_statusMessage = std::forward<StatusMessageT>(value);
260 }
261 template <typename StatusMessageT = Aws::String>
262 ResolverEndpoint& WithStatusMessage(StatusMessageT&& value) {
263 SetStatusMessage(std::forward<StatusMessageT>(value));
264 return *this;
265 }
267
269
273 inline const Aws::String& GetCreationTime() const { return m_creationTime; }
274 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
275 template <typename CreationTimeT = Aws::String>
276 void SetCreationTime(CreationTimeT&& value) {
277 m_creationTimeHasBeenSet = true;
278 m_creationTime = std::forward<CreationTimeT>(value);
279 }
280 template <typename CreationTimeT = Aws::String>
281 ResolverEndpoint& WithCreationTime(CreationTimeT&& value) {
282 SetCreationTime(std::forward<CreationTimeT>(value));
283 return *this;
284 }
286
288
292 inline const Aws::String& GetModificationTime() const { return m_modificationTime; }
293 inline bool ModificationTimeHasBeenSet() const { return m_modificationTimeHasBeenSet; }
294 template <typename ModificationTimeT = Aws::String>
295 void SetModificationTime(ModificationTimeT&& value) {
296 m_modificationTimeHasBeenSet = true;
297 m_modificationTime = std::forward<ModificationTimeT>(value);
298 }
299 template <typename ModificationTimeT = Aws::String>
300 ResolverEndpoint& WithModificationTime(ModificationTimeT&& value) {
301 SetModificationTime(std::forward<ModificationTimeT>(value));
302 return *this;
303 }
305
307
310 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
311 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
312 template <typename OutpostArnT = Aws::String>
313 void SetOutpostArn(OutpostArnT&& value) {
314 m_outpostArnHasBeenSet = true;
315 m_outpostArn = std::forward<OutpostArnT>(value);
316 }
317 template <typename OutpostArnT = Aws::String>
318 ResolverEndpoint& WithOutpostArn(OutpostArnT&& value) {
319 SetOutpostArn(std::forward<OutpostArnT>(value));
320 return *this;
321 }
323
325
328 inline const Aws::String& GetPreferredInstanceType() const { return m_preferredInstanceType; }
329 inline bool PreferredInstanceTypeHasBeenSet() const { return m_preferredInstanceTypeHasBeenSet; }
330 template <typename PreferredInstanceTypeT = Aws::String>
331 void SetPreferredInstanceType(PreferredInstanceTypeT&& value) {
332 m_preferredInstanceTypeHasBeenSet = true;
333 m_preferredInstanceType = std::forward<PreferredInstanceTypeT>(value);
334 }
335 template <typename PreferredInstanceTypeT = Aws::String>
336 ResolverEndpoint& WithPreferredInstanceType(PreferredInstanceTypeT&& value) {
337 SetPreferredInstanceType(std::forward<PreferredInstanceTypeT>(value));
338 return *this;
339 }
341
343
346 inline ResolverEndpointType GetResolverEndpointType() const { return m_resolverEndpointType; }
347 inline bool ResolverEndpointTypeHasBeenSet() const { return m_resolverEndpointTypeHasBeenSet; }
349 m_resolverEndpointTypeHasBeenSet = true;
350 m_resolverEndpointType = value;
351 }
354 return *this;
355 }
357
359
371 inline const Aws::Vector<Protocol>& GetProtocols() const { return m_protocols; }
372 inline bool ProtocolsHasBeenSet() const { return m_protocolsHasBeenSet; }
373 template <typename ProtocolsT = Aws::Vector<Protocol>>
374 void SetProtocols(ProtocolsT&& value) {
375 m_protocolsHasBeenSet = true;
376 m_protocols = std::forward<ProtocolsT>(value);
377 }
378 template <typename ProtocolsT = Aws::Vector<Protocol>>
379 ResolverEndpoint& WithProtocols(ProtocolsT&& value) {
380 SetProtocols(std::forward<ProtocolsT>(value));
381 return *this;
382 }
384 m_protocolsHasBeenSet = true;
385 m_protocols.push_back(value);
386 return *this;
387 }
389
391
397 inline bool GetRniEnhancedMetricsEnabled() const { return m_rniEnhancedMetricsEnabled; }
398 inline bool RniEnhancedMetricsEnabledHasBeenSet() const { return m_rniEnhancedMetricsEnabledHasBeenSet; }
399 inline void SetRniEnhancedMetricsEnabled(bool value) {
400 m_rniEnhancedMetricsEnabledHasBeenSet = true;
401 m_rniEnhancedMetricsEnabled = value;
402 }
405 return *this;
406 }
408
410
417 inline bool GetTargetNameServerMetricsEnabled() const { return m_targetNameServerMetricsEnabled; }
418 inline bool TargetNameServerMetricsEnabledHasBeenSet() const { return m_targetNameServerMetricsEnabledHasBeenSet; }
419 inline void SetTargetNameServerMetricsEnabled(bool value) {
420 m_targetNameServerMetricsEnabledHasBeenSet = true;
421 m_targetNameServerMetricsEnabled = value;
422 }
425 return *this;
426 }
428 private:
429 Aws::String m_id;
430
431 Aws::String m_creatorRequestId;
432
433 Aws::String m_arn;
434
435 Aws::String m_name;
436
437 Aws::Vector<Aws::String> m_securityGroupIds;
438
440
441 int m_ipAddressCount{0};
442
443 Aws::String m_hostVPCId;
444
446
447 Aws::String m_statusMessage;
448
449 Aws::String m_creationTime;
450
451 Aws::String m_modificationTime;
452
453 Aws::String m_outpostArn;
454
455 Aws::String m_preferredInstanceType;
456
458
459 Aws::Vector<Protocol> m_protocols;
460
461 bool m_rniEnhancedMetricsEnabled{false};
462
463 bool m_targetNameServerMetricsEnabled{false};
464 bool m_idHasBeenSet = false;
465 bool m_creatorRequestIdHasBeenSet = false;
466 bool m_arnHasBeenSet = false;
467 bool m_nameHasBeenSet = false;
468 bool m_securityGroupIdsHasBeenSet = false;
469 bool m_directionHasBeenSet = false;
470 bool m_ipAddressCountHasBeenSet = false;
471 bool m_hostVPCIdHasBeenSet = false;
472 bool m_statusHasBeenSet = false;
473 bool m_statusMessageHasBeenSet = false;
474 bool m_creationTimeHasBeenSet = false;
475 bool m_modificationTimeHasBeenSet = false;
476 bool m_outpostArnHasBeenSet = false;
477 bool m_preferredInstanceTypeHasBeenSet = false;
478 bool m_resolverEndpointTypeHasBeenSet = false;
479 bool m_protocolsHasBeenSet = false;
480 bool m_rniEnhancedMetricsEnabledHasBeenSet = false;
481 bool m_targetNameServerMetricsEnabledHasBeenSet = false;
482};
483
484} // namespace Model
485} // namespace Route53Resolver
486} // namespace Aws
ResolverEndpointType GetResolverEndpointType() const
ResolverEndpoint & WithModificationTime(ModificationTimeT &&value)
ResolverEndpoint & WithIpAddressCount(int value)
void SetDirection(ResolverEndpointDirection value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
void SetPreferredInstanceType(PreferredInstanceTypeT &&value)
AWS_ROUTE53RESOLVER_API ResolverEndpoint(Aws::Utils::Json::JsonView jsonValue)
ResolverEndpoint & WithStatus(ResolverEndpointStatus value)
ResolverEndpoint & WithOutpostArn(OutpostArnT &&value)
AWS_ROUTE53RESOLVER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetCreatorRequestId() const
ResolverEndpoint & WithDirection(ResolverEndpointDirection value)
ResolverEndpoint & WithCreationTime(CreationTimeT &&value)
void SetCreatorRequestId(CreatorRequestIdT &&value)
ResolverEndpoint & WithRniEnhancedMetricsEnabled(bool value)
ResolverEndpoint & WithCreatorRequestId(CreatorRequestIdT &&value)
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
const Aws::Vector< Protocol > & GetProtocols() const
void SetStatus(ResolverEndpointStatus value)
ResolverEndpoint & WithTargetNameServerMetricsEnabled(bool value)
ResolverEndpoint & WithHostVPCId(HostVPCIdT &&value)
ResolverEndpoint & WithPreferredInstanceType(PreferredInstanceTypeT &&value)
void SetModificationTime(ModificationTimeT &&value)
AWS_ROUTE53RESOLVER_API ResolverEndpoint()=default
ResolverEndpoint & WithSecurityGroupIds(SecurityGroupIdsT &&value)
AWS_ROUTE53RESOLVER_API ResolverEndpoint & operator=(Aws::Utils::Json::JsonView jsonValue)
ResolverEndpoint & WithResolverEndpointType(ResolverEndpointType value)
ResolverEndpointDirection GetDirection() const
ResolverEndpoint & WithStatusMessage(StatusMessageT &&value)
void SetResolverEndpointType(ResolverEndpointType value)
ResolverEndpoint & AddSecurityGroupIds(SecurityGroupIdsT &&value)
ResolverEndpoint & AddProtocols(Protocol value)
ResolverEndpoint & WithArn(ArnT &&value)
const Aws::String & GetPreferredInstanceType() const
ResolverEndpoint & WithProtocols(ProtocolsT &&value)
ResolverEndpoint & WithName(NameT &&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