AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
ModifyImageAttributeRequest.h
1
6#pragma once
7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/AttributeValue.h>
11#include <aws/ec2/model/LaunchPermissionModifications.h>
12#include <aws/ec2/model/OperationType.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <utility>
15
16namespace Aws
17{
18namespace EC2
19{
20namespace Model
21{
22
30 {
31 public:
32 AWS_EC2_API ModifyImageAttributeRequest() = default;
33
34 // Service request name is the Operation name which will send this request out,
35 // each operation should has unique request name, so that we can get operation's name from this request.
36 // Note: this is not true for response, multiple operations may have the same response name,
37 // so we can not get operation's name from response.
38 inline virtual const char* GetServiceRequestName() const override { return "ModifyImageAttribute"; }
39
40 AWS_EC2_API Aws::String SerializePayload() const override;
41
42 protected:
43 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
44
45 public:
46
48
53 inline const Aws::String& GetAttribute() const { return m_attribute; }
54 inline bool AttributeHasBeenSet() const { return m_attributeHasBeenSet; }
55 template<typename AttributeT = Aws::String>
56 void SetAttribute(AttributeT&& value) { m_attributeHasBeenSet = true; m_attribute = std::forward<AttributeT>(value); }
57 template<typename AttributeT = Aws::String>
58 ModifyImageAttributeRequest& WithAttribute(AttributeT&& value) { SetAttribute(std::forward<AttributeT>(value)); return *this;}
60
62
65 inline const AttributeValue& GetDescription() const { return m_description; }
66 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
67 template<typename DescriptionT = AttributeValue>
68 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
69 template<typename DescriptionT = AttributeValue>
70 ModifyImageAttributeRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
72
74
77 inline const Aws::String& GetImageId() const { return m_imageId; }
78 inline bool ImageIdHasBeenSet() const { return m_imageIdHasBeenSet; }
79 template<typename ImageIdT = Aws::String>
80 void SetImageId(ImageIdT&& value) { m_imageIdHasBeenSet = true; m_imageId = std::forward<ImageIdT>(value); }
81 template<typename ImageIdT = Aws::String>
82 ModifyImageAttributeRequest& WithImageId(ImageIdT&& value) { SetImageId(std::forward<ImageIdT>(value)); return *this;}
84
86
89 inline const LaunchPermissionModifications& GetLaunchPermission() const { return m_launchPermission; }
90 inline bool LaunchPermissionHasBeenSet() const { return m_launchPermissionHasBeenSet; }
91 template<typename LaunchPermissionT = LaunchPermissionModifications>
92 void SetLaunchPermission(LaunchPermissionT&& value) { m_launchPermissionHasBeenSet = true; m_launchPermission = std::forward<LaunchPermissionT>(value); }
93 template<typename LaunchPermissionT = LaunchPermissionModifications>
94 ModifyImageAttributeRequest& WithLaunchPermission(LaunchPermissionT&& value) { SetLaunchPermission(std::forward<LaunchPermissionT>(value)); return *this;}
96
98
102 inline OperationType GetOperationType() const { return m_operationType; }
103 inline bool OperationTypeHasBeenSet() const { return m_operationTypeHasBeenSet; }
104 inline void SetOperationType(OperationType value) { m_operationTypeHasBeenSet = true; m_operationType = value; }
107
109
112 inline const Aws::Vector<Aws::String>& GetProductCodes() const { return m_productCodes; }
113 inline bool ProductCodesHasBeenSet() const { return m_productCodesHasBeenSet; }
114 template<typename ProductCodesT = Aws::Vector<Aws::String>>
115 void SetProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes = std::forward<ProductCodesT>(value); }
116 template<typename ProductCodesT = Aws::Vector<Aws::String>>
117 ModifyImageAttributeRequest& WithProductCodes(ProductCodesT&& value) { SetProductCodes(std::forward<ProductCodesT>(value)); return *this;}
118 template<typename ProductCodesT = Aws::String>
119 ModifyImageAttributeRequest& AddProductCodes(ProductCodesT&& value) { m_productCodesHasBeenSet = true; m_productCodes.emplace_back(std::forward<ProductCodesT>(value)); return *this; }
121
123
127 inline const Aws::Vector<Aws::String>& GetUserGroups() const { return m_userGroups; }
128 inline bool UserGroupsHasBeenSet() const { return m_userGroupsHasBeenSet; }
129 template<typename UserGroupsT = Aws::Vector<Aws::String>>
130 void SetUserGroups(UserGroupsT&& value) { m_userGroupsHasBeenSet = true; m_userGroups = std::forward<UserGroupsT>(value); }
131 template<typename UserGroupsT = Aws::Vector<Aws::String>>
132 ModifyImageAttributeRequest& WithUserGroups(UserGroupsT&& value) { SetUserGroups(std::forward<UserGroupsT>(value)); return *this;}
133 template<typename UserGroupsT = Aws::String>
134 ModifyImageAttributeRequest& AddUserGroups(UserGroupsT&& value) { m_userGroupsHasBeenSet = true; m_userGroups.emplace_back(std::forward<UserGroupsT>(value)); return *this; }
136
138
142 inline const Aws::Vector<Aws::String>& GetUserIds() const { return m_userIds; }
143 inline bool UserIdsHasBeenSet() const { return m_userIdsHasBeenSet; }
144 template<typename UserIdsT = Aws::Vector<Aws::String>>
145 void SetUserIds(UserIdsT&& value) { m_userIdsHasBeenSet = true; m_userIds = std::forward<UserIdsT>(value); }
146 template<typename UserIdsT = Aws::Vector<Aws::String>>
147 ModifyImageAttributeRequest& WithUserIds(UserIdsT&& value) { SetUserIds(std::forward<UserIdsT>(value)); return *this;}
148 template<typename UserIdsT = Aws::String>
149 ModifyImageAttributeRequest& AddUserIds(UserIdsT&& value) { m_userIdsHasBeenSet = true; m_userIds.emplace_back(std::forward<UserIdsT>(value)); return *this; }
151
153
158 inline const Aws::String& GetValue() const { return m_value; }
159 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
160 template<typename ValueT = Aws::String>
161 void SetValue(ValueT&& value) { m_valueHasBeenSet = true; m_value = std::forward<ValueT>(value); }
162 template<typename ValueT = Aws::String>
163 ModifyImageAttributeRequest& WithValue(ValueT&& value) { SetValue(std::forward<ValueT>(value)); return *this;}
165
167
172 inline const Aws::Vector<Aws::String>& GetOrganizationArns() const { return m_organizationArns; }
173 inline bool OrganizationArnsHasBeenSet() const { return m_organizationArnsHasBeenSet; }
174 template<typename OrganizationArnsT = Aws::Vector<Aws::String>>
175 void SetOrganizationArns(OrganizationArnsT&& value) { m_organizationArnsHasBeenSet = true; m_organizationArns = std::forward<OrganizationArnsT>(value); }
176 template<typename OrganizationArnsT = Aws::Vector<Aws::String>>
177 ModifyImageAttributeRequest& WithOrganizationArns(OrganizationArnsT&& value) { SetOrganizationArns(std::forward<OrganizationArnsT>(value)); return *this;}
178 template<typename OrganizationArnsT = Aws::String>
179 ModifyImageAttributeRequest& AddOrganizationArns(OrganizationArnsT&& value) { m_organizationArnsHasBeenSet = true; m_organizationArns.emplace_back(std::forward<OrganizationArnsT>(value)); return *this; }
181
183
188 inline const Aws::Vector<Aws::String>& GetOrganizationalUnitArns() const { return m_organizationalUnitArns; }
189 inline bool OrganizationalUnitArnsHasBeenSet() const { return m_organizationalUnitArnsHasBeenSet; }
190 template<typename OrganizationalUnitArnsT = Aws::Vector<Aws::String>>
191 void SetOrganizationalUnitArns(OrganizationalUnitArnsT&& value) { m_organizationalUnitArnsHasBeenSet = true; m_organizationalUnitArns = std::forward<OrganizationalUnitArnsT>(value); }
192 template<typename OrganizationalUnitArnsT = Aws::Vector<Aws::String>>
193 ModifyImageAttributeRequest& WithOrganizationalUnitArns(OrganizationalUnitArnsT&& value) { SetOrganizationalUnitArns(std::forward<OrganizationalUnitArnsT>(value)); return *this;}
194 template<typename OrganizationalUnitArnsT = Aws::String>
195 ModifyImageAttributeRequest& AddOrganizationalUnitArns(OrganizationalUnitArnsT&& value) { m_organizationalUnitArnsHasBeenSet = true; m_organizationalUnitArns.emplace_back(std::forward<OrganizationalUnitArnsT>(value)); return *this; }
197
199
212 inline const AttributeValue& GetImdsSupport() const { return m_imdsSupport; }
213 inline bool ImdsSupportHasBeenSet() const { return m_imdsSupportHasBeenSet; }
214 template<typename ImdsSupportT = AttributeValue>
215 void SetImdsSupport(ImdsSupportT&& value) { m_imdsSupportHasBeenSet = true; m_imdsSupport = std::forward<ImdsSupportT>(value); }
216 template<typename ImdsSupportT = AttributeValue>
217 ModifyImageAttributeRequest& WithImdsSupport(ImdsSupportT&& value) { SetImdsSupport(std::forward<ImdsSupportT>(value)); return *this;}
219
221
227 inline bool GetDryRun() const { return m_dryRun; }
228 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
229 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
230 inline ModifyImageAttributeRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
232 private:
233
234 Aws::String m_attribute;
235 bool m_attributeHasBeenSet = false;
236
237 AttributeValue m_description;
238 bool m_descriptionHasBeenSet = false;
239
240 Aws::String m_imageId;
241 bool m_imageIdHasBeenSet = false;
242
243 LaunchPermissionModifications m_launchPermission;
244 bool m_launchPermissionHasBeenSet = false;
245
246 OperationType m_operationType{OperationType::NOT_SET};
247 bool m_operationTypeHasBeenSet = false;
248
249 Aws::Vector<Aws::String> m_productCodes;
250 bool m_productCodesHasBeenSet = false;
251
252 Aws::Vector<Aws::String> m_userGroups;
253 bool m_userGroupsHasBeenSet = false;
254
255 Aws::Vector<Aws::String> m_userIds;
256 bool m_userIdsHasBeenSet = false;
257
258 Aws::String m_value;
259 bool m_valueHasBeenSet = false;
260
261 Aws::Vector<Aws::String> m_organizationArns;
262 bool m_organizationArnsHasBeenSet = false;
263
264 Aws::Vector<Aws::String> m_organizationalUnitArns;
265 bool m_organizationalUnitArnsHasBeenSet = false;
266
267 AttributeValue m_imdsSupport;
268 bool m_imdsSupportHasBeenSet = false;
269
270 bool m_dryRun{false};
271 bool m_dryRunHasBeenSet = false;
272 };
273
274} // namespace Model
275} // namespace EC2
276} // namespace Aws
ModifyImageAttributeRequest & AddProductCodes(ProductCodesT &&value)
ModifyImageAttributeRequest & WithDescription(DescriptionT &&value)
const Aws::Vector< Aws::String > & GetUserGroups() const
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
const Aws::Vector< Aws::String > & GetOrganizationalUnitArns() const
ModifyImageAttributeRequest & AddUserIds(UserIdsT &&value)
ModifyImageAttributeRequest & WithAttribute(AttributeT &&value)
ModifyImageAttributeRequest & AddOrganizationArns(OrganizationArnsT &&value)
ModifyImageAttributeRequest & WithImdsSupport(ImdsSupportT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
ModifyImageAttributeRequest & WithUserIds(UserIdsT &&value)
const Aws::Vector< Aws::String > & GetProductCodes() const
ModifyImageAttributeRequest & WithUserGroups(UserGroupsT &&value)
ModifyImageAttributeRequest & WithDryRun(bool value)
ModifyImageAttributeRequest & WithLaunchPermission(LaunchPermissionT &&value)
ModifyImageAttributeRequest & WithOrganizationalUnitArns(OrganizationalUnitArnsT &&value)
ModifyImageAttributeRequest & WithOperationType(OperationType value)
ModifyImageAttributeRequest & WithImageId(ImageIdT &&value)
void SetOrganizationalUnitArns(OrganizationalUnitArnsT &&value)
const LaunchPermissionModifications & GetLaunchPermission() const
virtual const char * GetServiceRequestName() const override
ModifyImageAttributeRequest & WithOrganizationArns(OrganizationArnsT &&value)
ModifyImageAttributeRequest & WithProductCodes(ProductCodesT &&value)
ModifyImageAttributeRequest & AddOrganizationalUnitArns(OrganizationalUnitArnsT &&value)
const Aws::Vector< Aws::String > & GetUserIds() const
ModifyImageAttributeRequest & WithValue(ValueT &&value)
ModifyImageAttributeRequest & AddUserGroups(UserGroupsT &&value)
const Aws::Vector< Aws::String > & GetOrganizationArns() const
AWS_EC2_API ModifyImageAttributeRequest()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector