AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
VpcInterfaceRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/mediaconnect/MediaConnect_EXPORTS.h>
11#include <aws/mediaconnect/model/NetworkInterfaceType.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace MediaConnect {
23namespace Model {
24
32 public:
33 AWS_MEDIACONNECT_API VpcInterfaceRequest() = default;
34 AWS_MEDIACONNECT_API VpcInterfaceRequest(Aws::Utils::Json::JsonView jsonValue);
36 AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template <typename NameT = Aws::String>
46 void SetName(NameT&& value) {
47 m_nameHasBeenSet = true;
48 m_name = std::forward<NameT>(value);
49 }
50 template <typename NameT = Aws::String>
51 VpcInterfaceRequest& WithName(NameT&& value) {
52 SetName(std::forward<NameT>(value));
53 return *this;
54 }
56
58
61 inline NetworkInterfaceType GetNetworkInterfaceType() const { return m_networkInterfaceType; }
62 inline bool NetworkInterfaceTypeHasBeenSet() const { return m_networkInterfaceTypeHasBeenSet; }
64 m_networkInterfaceTypeHasBeenSet = true;
65 m_networkInterfaceType = value;
66 }
69 return *this;
70 }
72
74
78 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
79 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
80 template <typename RoleArnT = Aws::String>
81 void SetRoleArn(RoleArnT&& value) {
82 m_roleArnHasBeenSet = true;
83 m_roleArn = std::forward<RoleArnT>(value);
84 }
85 template <typename RoleArnT = Aws::String>
86 VpcInterfaceRequest& WithRoleArn(RoleArnT&& value) {
87 SetRoleArn(std::forward<RoleArnT>(value));
88 return *this;
89 }
91
93
96 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
97 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
98 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
99 void SetSecurityGroupIds(SecurityGroupIdsT&& value) {
100 m_securityGroupIdsHasBeenSet = true;
101 m_securityGroupIds = std::forward<SecurityGroupIdsT>(value);
102 }
103 template <typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
104 VpcInterfaceRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) {
105 SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value));
106 return *this;
107 }
108 template <typename SecurityGroupIdsT = Aws::String>
109 VpcInterfaceRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) {
110 m_securityGroupIdsHasBeenSet = true;
111 m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value));
112 return *this;
113 }
115
117
127 inline const Aws::String& GetSubnetId() const { return m_subnetId; }
128 inline bool SubnetIdHasBeenSet() const { return m_subnetIdHasBeenSet; }
129 template <typename SubnetIdT = Aws::String>
130 void SetSubnetId(SubnetIdT&& value) {
131 m_subnetIdHasBeenSet = true;
132 m_subnetId = std::forward<SubnetIdT>(value);
133 }
134 template <typename SubnetIdT = Aws::String>
135 VpcInterfaceRequest& WithSubnetId(SubnetIdT&& value) {
136 SetSubnetId(std::forward<SubnetIdT>(value));
137 return *this;
138 }
140
142
146 inline const Aws::Map<Aws::String, Aws::String>& GetVpcInterfaceTags() const { return m_vpcInterfaceTags; }
147 inline bool VpcInterfaceTagsHasBeenSet() const { return m_vpcInterfaceTagsHasBeenSet; }
148 template <typename VpcInterfaceTagsT = Aws::Map<Aws::String, Aws::String>>
149 void SetVpcInterfaceTags(VpcInterfaceTagsT&& value) {
150 m_vpcInterfaceTagsHasBeenSet = true;
151 m_vpcInterfaceTags = std::forward<VpcInterfaceTagsT>(value);
152 }
153 template <typename VpcInterfaceTagsT = Aws::Map<Aws::String, Aws::String>>
154 VpcInterfaceRequest& WithVpcInterfaceTags(VpcInterfaceTagsT&& value) {
155 SetVpcInterfaceTags(std::forward<VpcInterfaceTagsT>(value));
156 return *this;
157 }
158 template <typename VpcInterfaceTagsKeyT = Aws::String, typename VpcInterfaceTagsValueT = Aws::String>
159 VpcInterfaceRequest& AddVpcInterfaceTags(VpcInterfaceTagsKeyT&& key, VpcInterfaceTagsValueT&& value) {
160 m_vpcInterfaceTagsHasBeenSet = true;
161 m_vpcInterfaceTags.emplace(std::forward<VpcInterfaceTagsKeyT>(key), std::forward<VpcInterfaceTagsValueT>(value));
162 return *this;
163 }
165 private:
166 Aws::String m_name;
167
169
170 Aws::String m_roleArn;
171
172 Aws::Vector<Aws::String> m_securityGroupIds;
173
174 Aws::String m_subnetId;
175
176 Aws::Map<Aws::String, Aws::String> m_vpcInterfaceTags;
177 bool m_nameHasBeenSet = false;
178 bool m_networkInterfaceTypeHasBeenSet = false;
179 bool m_roleArnHasBeenSet = false;
180 bool m_securityGroupIdsHasBeenSet = false;
181 bool m_subnetIdHasBeenSet = false;
182 bool m_vpcInterfaceTagsHasBeenSet = false;
183};
184
185} // namespace Model
186} // namespace MediaConnect
187} // namespace Aws
VpcInterfaceRequest & WithVpcInterfaceTags(VpcInterfaceTagsT &&value)
void SetVpcInterfaceTags(VpcInterfaceTagsT &&value)
AWS_MEDIACONNECT_API VpcInterfaceRequest(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
VpcInterfaceRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
VpcInterfaceRequest & AddVpcInterfaceTags(VpcInterfaceTagsKeyT &&key, VpcInterfaceTagsValueT &&value)
VpcInterfaceRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
void SetNetworkInterfaceType(NetworkInterfaceType value)
AWS_MEDIACONNECT_API VpcInterfaceRequest()=default
VpcInterfaceRequest & WithSubnetId(SubnetIdT &&value)
VpcInterfaceRequest & WithRoleArn(RoleArnT &&value)
const Aws::Map< Aws::String, Aws::String > & GetVpcInterfaceTags() const
AWS_MEDIACONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_MEDIACONNECT_API VpcInterfaceRequest & operator=(Aws::Utils::Json::JsonView jsonValue)
VpcInterfaceRequest & WithName(NameT &&value)
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
VpcInterfaceRequest & WithNetworkInterfaceType(NetworkInterfaceType value)
NetworkInterfaceType GetNetworkInterfaceType() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue