AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
PrivateLinkConfig.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/datasync/DataSync_EXPORTS.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace DataSync {
21namespace Model {
22
32 public:
33 AWS_DATASYNC_API PrivateLinkConfig() = default;
34 AWS_DATASYNC_API PrivateLinkConfig(Aws::Utils::Json::JsonView jsonValue);
36 AWS_DATASYNC_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetVpcEndpointId() const { return m_vpcEndpointId; }
43 inline bool VpcEndpointIdHasBeenSet() const { return m_vpcEndpointIdHasBeenSet; }
44 template <typename VpcEndpointIdT = Aws::String>
45 void SetVpcEndpointId(VpcEndpointIdT&& value) {
46 m_vpcEndpointIdHasBeenSet = true;
47 m_vpcEndpointId = std::forward<VpcEndpointIdT>(value);
48 }
49 template <typename VpcEndpointIdT = Aws::String>
50 PrivateLinkConfig& WithVpcEndpointId(VpcEndpointIdT&& value) {
51 SetVpcEndpointId(std::forward<VpcEndpointIdT>(value));
52 return *this;
53 }
55
57
62 inline const Aws::String& GetPrivateLinkEndpoint() const { return m_privateLinkEndpoint; }
63 inline bool PrivateLinkEndpointHasBeenSet() const { return m_privateLinkEndpointHasBeenSet; }
64 template <typename PrivateLinkEndpointT = Aws::String>
65 void SetPrivateLinkEndpoint(PrivateLinkEndpointT&& value) {
66 m_privateLinkEndpointHasBeenSet = true;
67 m_privateLinkEndpoint = std::forward<PrivateLinkEndpointT>(value);
68 }
69 template <typename PrivateLinkEndpointT = Aws::String>
70 PrivateLinkConfig& WithPrivateLinkEndpoint(PrivateLinkEndpointT&& value) {
71 SetPrivateLinkEndpoint(std::forward<PrivateLinkEndpointT>(value));
72 return *this;
73 }
75
77
81 inline const Aws::Vector<Aws::String>& GetSubnetArns() const { return m_subnetArns; }
82 inline bool SubnetArnsHasBeenSet() const { return m_subnetArnsHasBeenSet; }
83 template <typename SubnetArnsT = Aws::Vector<Aws::String>>
84 void SetSubnetArns(SubnetArnsT&& value) {
85 m_subnetArnsHasBeenSet = true;
86 m_subnetArns = std::forward<SubnetArnsT>(value);
87 }
88 template <typename SubnetArnsT = Aws::Vector<Aws::String>>
89 PrivateLinkConfig& WithSubnetArns(SubnetArnsT&& value) {
90 SetSubnetArns(std::forward<SubnetArnsT>(value));
91 return *this;
92 }
93 template <typename SubnetArnsT = Aws::String>
94 PrivateLinkConfig& AddSubnetArns(SubnetArnsT&& value) {
95 m_subnetArnsHasBeenSet = true;
96 m_subnetArns.emplace_back(std::forward<SubnetArnsT>(value));
97 return *this;
98 }
100
102
106 inline const Aws::Vector<Aws::String>& GetSecurityGroupArns() const { return m_securityGroupArns; }
107 inline bool SecurityGroupArnsHasBeenSet() const { return m_securityGroupArnsHasBeenSet; }
108 template <typename SecurityGroupArnsT = Aws::Vector<Aws::String>>
109 void SetSecurityGroupArns(SecurityGroupArnsT&& value) {
110 m_securityGroupArnsHasBeenSet = true;
111 m_securityGroupArns = std::forward<SecurityGroupArnsT>(value);
112 }
113 template <typename SecurityGroupArnsT = Aws::Vector<Aws::String>>
114 PrivateLinkConfig& WithSecurityGroupArns(SecurityGroupArnsT&& value) {
115 SetSecurityGroupArns(std::forward<SecurityGroupArnsT>(value));
116 return *this;
117 }
118 template <typename SecurityGroupArnsT = Aws::String>
119 PrivateLinkConfig& AddSecurityGroupArns(SecurityGroupArnsT&& value) {
120 m_securityGroupArnsHasBeenSet = true;
121 m_securityGroupArns.emplace_back(std::forward<SecurityGroupArnsT>(value));
122 return *this;
123 }
125 private:
126 Aws::String m_vpcEndpointId;
127
128 Aws::String m_privateLinkEndpoint;
129
130 Aws::Vector<Aws::String> m_subnetArns;
131
132 Aws::Vector<Aws::String> m_securityGroupArns;
133 bool m_vpcEndpointIdHasBeenSet = false;
134 bool m_privateLinkEndpointHasBeenSet = false;
135 bool m_subnetArnsHasBeenSet = false;
136 bool m_securityGroupArnsHasBeenSet = false;
137};
138
139} // namespace Model
140} // namespace DataSync
141} // namespace Aws
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue