AWS SDK for C++

AWS SDK for C++ Version 1.11.644

Loading...
Searching...
No Matches
CreateImageBuilderRequest.h
1
6#pragma once
7#include <aws/appstream/AppStream_EXPORTS.h>
8#include <aws/appstream/AppStreamRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/appstream/model/VpcConfig.h>
11#include <aws/appstream/model/DomainJoinInfo.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/appstream/model/AccessEndpoint.h>
15#include <utility>
16
17namespace Aws
18{
19namespace AppStream
20{
21namespace Model
22{
23
27 {
28 public:
29 AWS_APPSTREAM_API CreateImageBuilderRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "CreateImageBuilder"; }
36
37 AWS_APPSTREAM_API Aws::String SerializePayload() const override;
38
40
41
43
46 inline const Aws::String& GetName() const { return m_name; }
47 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
48 template<typename NameT = Aws::String>
49 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
50 template<typename NameT = Aws::String>
51 CreateImageBuilderRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
53
55
58 inline const Aws::String& GetImageName() const { return m_imageName; }
59 inline bool ImageNameHasBeenSet() const { return m_imageNameHasBeenSet; }
60 template<typename ImageNameT = Aws::String>
61 void SetImageName(ImageNameT&& value) { m_imageNameHasBeenSet = true; m_imageName = std::forward<ImageNameT>(value); }
62 template<typename ImageNameT = Aws::String>
63 CreateImageBuilderRequest& WithImageName(ImageNameT&& value) { SetImageName(std::forward<ImageNameT>(value)); return *this;}
65
67
70 inline const Aws::String& GetImageArn() const { return m_imageArn; }
71 inline bool ImageArnHasBeenSet() const { return m_imageArnHasBeenSet; }
72 template<typename ImageArnT = Aws::String>
73 void SetImageArn(ImageArnT&& value) { m_imageArnHasBeenSet = true; m_imageArn = std::forward<ImageArnT>(value); }
74 template<typename ImageArnT = Aws::String>
75 CreateImageBuilderRequest& WithImageArn(ImageArnT&& value) { SetImageArn(std::forward<ImageArnT>(value)); return *this;}
77
79
117 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
118 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
119 template<typename InstanceTypeT = Aws::String>
120 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
121 template<typename InstanceTypeT = Aws::String>
122 CreateImageBuilderRequest& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
124
126
129 inline const Aws::String& GetDescription() const { return m_description; }
130 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
131 template<typename DescriptionT = Aws::String>
132 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
133 template<typename DescriptionT = Aws::String>
134 CreateImageBuilderRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
136
138
141 inline const Aws::String& GetDisplayName() const { return m_displayName; }
142 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
143 template<typename DisplayNameT = Aws::String>
144 void SetDisplayName(DisplayNameT&& value) { m_displayNameHasBeenSet = true; m_displayName = std::forward<DisplayNameT>(value); }
145 template<typename DisplayNameT = Aws::String>
146 CreateImageBuilderRequest& WithDisplayName(DisplayNameT&& value) { SetDisplayName(std::forward<DisplayNameT>(value)); return *this;}
148
150
154 inline const VpcConfig& GetVpcConfig() const { return m_vpcConfig; }
155 inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
156 template<typename VpcConfigT = VpcConfig>
157 void SetVpcConfig(VpcConfigT&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::forward<VpcConfigT>(value); }
158 template<typename VpcConfigT = VpcConfig>
159 CreateImageBuilderRequest& WithVpcConfig(VpcConfigT&& value) { SetVpcConfig(std::forward<VpcConfigT>(value)); return *this;}
161
163
176 inline const Aws::String& GetIamRoleArn() const { return m_iamRoleArn; }
177 inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; }
178 template<typename IamRoleArnT = Aws::String>
179 void SetIamRoleArn(IamRoleArnT&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::forward<IamRoleArnT>(value); }
180 template<typename IamRoleArnT = Aws::String>
181 CreateImageBuilderRequest& WithIamRoleArn(IamRoleArnT&& value) { SetIamRoleArn(std::forward<IamRoleArnT>(value)); return *this;}
183
185
188 inline bool GetEnableDefaultInternetAccess() const { return m_enableDefaultInternetAccess; }
189 inline bool EnableDefaultInternetAccessHasBeenSet() const { return m_enableDefaultInternetAccessHasBeenSet; }
190 inline void SetEnableDefaultInternetAccess(bool value) { m_enableDefaultInternetAccessHasBeenSet = true; m_enableDefaultInternetAccess = value; }
193
195
199 inline const DomainJoinInfo& GetDomainJoinInfo() const { return m_domainJoinInfo; }
200 inline bool DomainJoinInfoHasBeenSet() const { return m_domainJoinInfoHasBeenSet; }
201 template<typename DomainJoinInfoT = DomainJoinInfo>
202 void SetDomainJoinInfo(DomainJoinInfoT&& value) { m_domainJoinInfoHasBeenSet = true; m_domainJoinInfo = std::forward<DomainJoinInfoT>(value); }
203 template<typename DomainJoinInfoT = DomainJoinInfo>
204 CreateImageBuilderRequest& WithDomainJoinInfo(DomainJoinInfoT&& value) { SetDomainJoinInfo(std::forward<DomainJoinInfoT>(value)); return *this;}
206
208
212 inline const Aws::String& GetAppstreamAgentVersion() const { return m_appstreamAgentVersion; }
213 inline bool AppstreamAgentVersionHasBeenSet() const { return m_appstreamAgentVersionHasBeenSet; }
214 template<typename AppstreamAgentVersionT = Aws::String>
215 void SetAppstreamAgentVersion(AppstreamAgentVersionT&& value) { m_appstreamAgentVersionHasBeenSet = true; m_appstreamAgentVersion = std::forward<AppstreamAgentVersionT>(value); }
216 template<typename AppstreamAgentVersionT = Aws::String>
217 CreateImageBuilderRequest& WithAppstreamAgentVersion(AppstreamAgentVersionT&& value) { SetAppstreamAgentVersion(std::forward<AppstreamAgentVersionT>(value)); return *this;}
219
221
231 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
232 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
233 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
234 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
235 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
236 CreateImageBuilderRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
237 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
238 CreateImageBuilderRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
239 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
240 }
242
244
249 inline const Aws::Vector<AccessEndpoint>& GetAccessEndpoints() const { return m_accessEndpoints; }
250 inline bool AccessEndpointsHasBeenSet() const { return m_accessEndpointsHasBeenSet; }
251 template<typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
252 void SetAccessEndpoints(AccessEndpointsT&& value) { m_accessEndpointsHasBeenSet = true; m_accessEndpoints = std::forward<AccessEndpointsT>(value); }
253 template<typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
254 CreateImageBuilderRequest& WithAccessEndpoints(AccessEndpointsT&& value) { SetAccessEndpoints(std::forward<AccessEndpointsT>(value)); return *this;}
255 template<typename AccessEndpointsT = AccessEndpoint>
256 CreateImageBuilderRequest& AddAccessEndpoints(AccessEndpointsT&& value) { m_accessEndpointsHasBeenSet = true; m_accessEndpoints.emplace_back(std::forward<AccessEndpointsT>(value)); return *this; }
258 private:
259
260 Aws::String m_name;
261 bool m_nameHasBeenSet = false;
262
263 Aws::String m_imageName;
264 bool m_imageNameHasBeenSet = false;
265
266 Aws::String m_imageArn;
267 bool m_imageArnHasBeenSet = false;
268
269 Aws::String m_instanceType;
270 bool m_instanceTypeHasBeenSet = false;
271
272 Aws::String m_description;
273 bool m_descriptionHasBeenSet = false;
274
275 Aws::String m_displayName;
276 bool m_displayNameHasBeenSet = false;
277
278 VpcConfig m_vpcConfig;
279 bool m_vpcConfigHasBeenSet = false;
280
281 Aws::String m_iamRoleArn;
282 bool m_iamRoleArnHasBeenSet = false;
283
284 bool m_enableDefaultInternetAccess{false};
285 bool m_enableDefaultInternetAccessHasBeenSet = false;
286
287 DomainJoinInfo m_domainJoinInfo;
288 bool m_domainJoinInfoHasBeenSet = false;
289
290 Aws::String m_appstreamAgentVersion;
291 bool m_appstreamAgentVersionHasBeenSet = false;
292
294 bool m_tagsHasBeenSet = false;
295
296 Aws::Vector<AccessEndpoint> m_accessEndpoints;
297 bool m_accessEndpointsHasBeenSet = false;
298 };
299
300} // namespace Model
301} // namespace AppStream
302} // namespace Aws
CreateImageBuilderRequest & WithDomainJoinInfo(DomainJoinInfoT &&value)
CreateImageBuilderRequest & WithAccessEndpoints(AccessEndpointsT &&value)
AWS_APPSTREAM_API CreateImageBuilderRequest()=default
CreateImageBuilderRequest & WithDisplayName(DisplayNameT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateImageBuilderRequest & WithImageArn(ImageArnT &&value)
CreateImageBuilderRequest & WithName(NameT &&value)
CreateImageBuilderRequest & WithIamRoleArn(IamRoleArnT &&value)
const Aws::Vector< AccessEndpoint > & GetAccessEndpoints() const
CreateImageBuilderRequest & WithAppstreamAgentVersion(AppstreamAgentVersionT &&value)
CreateImageBuilderRequest & WithImageName(ImageNameT &&value)
CreateImageBuilderRequest & WithVpcConfig(VpcConfigT &&value)
CreateImageBuilderRequest & WithEnableDefaultInternetAccess(bool value)
CreateImageBuilderRequest & WithDescription(DescriptionT &&value)
CreateImageBuilderRequest & AddAccessEndpoints(AccessEndpointsT &&value)
AWS_APPSTREAM_API Aws::String SerializePayload() const override
CreateImageBuilderRequest & WithInstanceType(InstanceTypeT &&value)
CreateImageBuilderRequest & WithTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
CreateImageBuilderRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetAppstreamAgentVersion(AppstreamAgentVersionT &&value)
AWS_APPSTREAM_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
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