AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
CreateInstanceProfileRequest.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/dms/DatabaseMigrationServiceRequest.h>
10#include <aws/dms/DatabaseMigrationService_EXPORTS.h>
11#include <aws/dms/model/Tag.h>
12
13#include <utility>
14
15namespace Aws {
16namespace DatabaseMigrationService {
17namespace Model {
18
22 public:
23 AWS_DATABASEMIGRATIONSERVICE_API CreateInstanceProfileRequest() = default;
24
25 // Service request name is the Operation name which will send this request out,
26 // each operation should has unique request name, so that we can get operation's name from this request.
27 // Note: this is not true for response, multiple operations may have the same response name,
28 // so we can not get operation's name from response.
29 inline virtual const char* GetServiceRequestName() const override { return "CreateInstanceProfile"; }
30
31 AWS_DATABASEMIGRATIONSERVICE_API Aws::String SerializePayload() const override;
32
33 AWS_DATABASEMIGRATIONSERVICE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
34
36
42 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
43 inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; }
44 template <typename AvailabilityZoneT = Aws::String>
45 void SetAvailabilityZone(AvailabilityZoneT&& value) {
46 m_availabilityZoneHasBeenSet = true;
47 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
48 }
49 template <typename AvailabilityZoneT = Aws::String>
51 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
52 return *this;
53 }
55
57
63 inline const Aws::String& GetKmsKeyArn() const { return m_kmsKeyArn; }
64 inline bool KmsKeyArnHasBeenSet() const { return m_kmsKeyArnHasBeenSet; }
65 template <typename KmsKeyArnT = Aws::String>
66 void SetKmsKeyArn(KmsKeyArnT&& value) {
67 m_kmsKeyArnHasBeenSet = true;
68 m_kmsKeyArn = std::forward<KmsKeyArnT>(value);
69 }
70 template <typename KmsKeyArnT = Aws::String>
72 SetKmsKeyArn(std::forward<KmsKeyArnT>(value));
73 return *this;
74 }
76
78
84 inline bool GetPubliclyAccessible() const { return m_publiclyAccessible; }
85 inline bool PubliclyAccessibleHasBeenSet() const { return m_publiclyAccessibleHasBeenSet; }
86 inline void SetPubliclyAccessible(bool value) {
87 m_publiclyAccessibleHasBeenSet = true;
88 m_publiclyAccessible = value;
89 }
92 return *this;
93 }
95
97
100 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
101 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
102 template <typename TagsT = Aws::Vector<Tag>>
103 void SetTags(TagsT&& value) {
104 m_tagsHasBeenSet = true;
105 m_tags = std::forward<TagsT>(value);
106 }
107 template <typename TagsT = Aws::Vector<Tag>>
109 SetTags(std::forward<TagsT>(value));
110 return *this;
111 }
112 template <typename TagsT = Tag>
114 m_tagsHasBeenSet = true;
115 m_tags.emplace_back(std::forward<TagsT>(value));
116 return *this;
117 }
119
121
129 inline const Aws::String& GetNetworkType() const { return m_networkType; }
130 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
131 template <typename NetworkTypeT = Aws::String>
132 void SetNetworkType(NetworkTypeT&& value) {
133 m_networkTypeHasBeenSet = true;
134 m_networkType = std::forward<NetworkTypeT>(value);
135 }
136 template <typename NetworkTypeT = Aws::String>
138 SetNetworkType(std::forward<NetworkTypeT>(value));
139 return *this;
140 }
142
144
147 inline const Aws::String& GetInstanceProfileName() const { return m_instanceProfileName; }
148 inline bool InstanceProfileNameHasBeenSet() const { return m_instanceProfileNameHasBeenSet; }
149 template <typename InstanceProfileNameT = Aws::String>
150 void SetInstanceProfileName(InstanceProfileNameT&& value) {
151 m_instanceProfileNameHasBeenSet = true;
152 m_instanceProfileName = std::forward<InstanceProfileNameT>(value);
153 }
154 template <typename InstanceProfileNameT = Aws::String>
156 SetInstanceProfileName(std::forward<InstanceProfileNameT>(value));
157 return *this;
158 }
160
162
165 inline const Aws::String& GetDescription() const { return m_description; }
166 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
167 template <typename DescriptionT = Aws::String>
168 void SetDescription(DescriptionT&& value) {
169 m_descriptionHasBeenSet = true;
170 m_description = std::forward<DescriptionT>(value);
171 }
172 template <typename DescriptionT = Aws::String>
174 SetDescription(std::forward<DescriptionT>(value));
175 return *this;
176 }
178
180
183 inline const Aws::String& GetSubnetGroupIdentifier() const { return m_subnetGroupIdentifier; }
184 inline bool SubnetGroupIdentifierHasBeenSet() const { return m_subnetGroupIdentifierHasBeenSet; }
185 template <typename SubnetGroupIdentifierT = Aws::String>
186 void SetSubnetGroupIdentifier(SubnetGroupIdentifierT&& value) {
187 m_subnetGroupIdentifierHasBeenSet = true;
188 m_subnetGroupIdentifier = std::forward<SubnetGroupIdentifierT>(value);
189 }
190 template <typename SubnetGroupIdentifierT = Aws::String>
192 SetSubnetGroupIdentifier(std::forward<SubnetGroupIdentifierT>(value));
193 return *this;
194 }
196
198
203 inline const Aws::Vector<Aws::String>& GetVpcSecurityGroups() const { return m_vpcSecurityGroups; }
204 inline bool VpcSecurityGroupsHasBeenSet() const { return m_vpcSecurityGroupsHasBeenSet; }
205 template <typename VpcSecurityGroupsT = Aws::Vector<Aws::String>>
206 void SetVpcSecurityGroups(VpcSecurityGroupsT&& value) {
207 m_vpcSecurityGroupsHasBeenSet = true;
208 m_vpcSecurityGroups = std::forward<VpcSecurityGroupsT>(value);
209 }
210 template <typename VpcSecurityGroupsT = Aws::Vector<Aws::String>>
212 SetVpcSecurityGroups(std::forward<VpcSecurityGroupsT>(value));
213 return *this;
214 }
215 template <typename VpcSecurityGroupsT = Aws::String>
217 m_vpcSecurityGroupsHasBeenSet = true;
218 m_vpcSecurityGroups.emplace_back(std::forward<VpcSecurityGroupsT>(value));
219 return *this;
220 }
222 private:
223 Aws::String m_availabilityZone;
224
225 Aws::String m_kmsKeyArn;
226
227 bool m_publiclyAccessible{false};
228
229 Aws::Vector<Tag> m_tags;
230
231 Aws::String m_networkType;
232
233 Aws::String m_instanceProfileName;
234
235 Aws::String m_description;
236
237 Aws::String m_subnetGroupIdentifier;
238
239 Aws::Vector<Aws::String> m_vpcSecurityGroups;
240 bool m_availabilityZoneHasBeenSet = false;
241 bool m_kmsKeyArnHasBeenSet = false;
242 bool m_publiclyAccessibleHasBeenSet = false;
243 bool m_tagsHasBeenSet = false;
244 bool m_networkTypeHasBeenSet = false;
245 bool m_instanceProfileNameHasBeenSet = false;
246 bool m_descriptionHasBeenSet = false;
247 bool m_subnetGroupIdentifierHasBeenSet = false;
248 bool m_vpcSecurityGroupsHasBeenSet = false;
249};
250
251} // namespace Model
252} // namespace DatabaseMigrationService
253} // namespace Aws
AWS_DATABASEMIGRATIONSERVICE_API Aws::String SerializePayload() const override
CreateInstanceProfileRequest & WithNetworkType(NetworkTypeT &&value)
CreateInstanceProfileRequest & WithInstanceProfileName(InstanceProfileNameT &&value)
CreateInstanceProfileRequest & WithSubnetGroupIdentifier(SubnetGroupIdentifierT &&value)
CreateInstanceProfileRequest & WithDescription(DescriptionT &&value)
CreateInstanceProfileRequest & AddVpcSecurityGroups(VpcSecurityGroupsT &&value)
AWS_DATABASEMIGRATIONSERVICE_API CreateInstanceProfileRequest()=default
CreateInstanceProfileRequest & WithVpcSecurityGroups(VpcSecurityGroupsT &&value)
CreateInstanceProfileRequest & WithAvailabilityZone(AvailabilityZoneT &&value)
AWS_DATABASEMIGRATIONSERVICE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector