AWS SDK for C++

AWS SDK for C++ Version 1.11.606

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
106 inline const Aws::String& GetInstanceType() const { return m_instanceType; }
107 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; }
108 template<typename InstanceTypeT = Aws::String>
109 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::forward<InstanceTypeT>(value); }
110 template<typename InstanceTypeT = Aws::String>
111 CreateImageBuilderRequest& WithInstanceType(InstanceTypeT&& value) { SetInstanceType(std::forward<InstanceTypeT>(value)); return *this;}
113
115
118 inline const Aws::String& GetDescription() const { return m_description; }
119 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
120 template<typename DescriptionT = Aws::String>
121 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
122 template<typename DescriptionT = Aws::String>
123 CreateImageBuilderRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
125
127
130 inline const Aws::String& GetDisplayName() const { return m_displayName; }
131 inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
132 template<typename DisplayNameT = Aws::String>
133 void SetDisplayName(DisplayNameT&& value) { m_displayNameHasBeenSet = true; m_displayName = std::forward<DisplayNameT>(value); }
134 template<typename DisplayNameT = Aws::String>
135 CreateImageBuilderRequest& WithDisplayName(DisplayNameT&& value) { SetDisplayName(std::forward<DisplayNameT>(value)); return *this;}
137
139
143 inline const VpcConfig& GetVpcConfig() const { return m_vpcConfig; }
144 inline bool VpcConfigHasBeenSet() const { return m_vpcConfigHasBeenSet; }
145 template<typename VpcConfigT = VpcConfig>
146 void SetVpcConfig(VpcConfigT&& value) { m_vpcConfigHasBeenSet = true; m_vpcConfig = std::forward<VpcConfigT>(value); }
147 template<typename VpcConfigT = VpcConfig>
148 CreateImageBuilderRequest& WithVpcConfig(VpcConfigT&& value) { SetVpcConfig(std::forward<VpcConfigT>(value)); return *this;}
150
152
165 inline const Aws::String& GetIamRoleArn() const { return m_iamRoleArn; }
166 inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; }
167 template<typename IamRoleArnT = Aws::String>
168 void SetIamRoleArn(IamRoleArnT&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::forward<IamRoleArnT>(value); }
169 template<typename IamRoleArnT = Aws::String>
170 CreateImageBuilderRequest& WithIamRoleArn(IamRoleArnT&& value) { SetIamRoleArn(std::forward<IamRoleArnT>(value)); return *this;}
172
174
177 inline bool GetEnableDefaultInternetAccess() const { return m_enableDefaultInternetAccess; }
178 inline bool EnableDefaultInternetAccessHasBeenSet() const { return m_enableDefaultInternetAccessHasBeenSet; }
179 inline void SetEnableDefaultInternetAccess(bool value) { m_enableDefaultInternetAccessHasBeenSet = true; m_enableDefaultInternetAccess = value; }
182
184
188 inline const DomainJoinInfo& GetDomainJoinInfo() const { return m_domainJoinInfo; }
189 inline bool DomainJoinInfoHasBeenSet() const { return m_domainJoinInfoHasBeenSet; }
190 template<typename DomainJoinInfoT = DomainJoinInfo>
191 void SetDomainJoinInfo(DomainJoinInfoT&& value) { m_domainJoinInfoHasBeenSet = true; m_domainJoinInfo = std::forward<DomainJoinInfoT>(value); }
192 template<typename DomainJoinInfoT = DomainJoinInfo>
193 CreateImageBuilderRequest& WithDomainJoinInfo(DomainJoinInfoT&& value) { SetDomainJoinInfo(std::forward<DomainJoinInfoT>(value)); return *this;}
195
197
201 inline const Aws::String& GetAppstreamAgentVersion() const { return m_appstreamAgentVersion; }
202 inline bool AppstreamAgentVersionHasBeenSet() const { return m_appstreamAgentVersionHasBeenSet; }
203 template<typename AppstreamAgentVersionT = Aws::String>
204 void SetAppstreamAgentVersion(AppstreamAgentVersionT&& value) { m_appstreamAgentVersionHasBeenSet = true; m_appstreamAgentVersion = std::forward<AppstreamAgentVersionT>(value); }
205 template<typename AppstreamAgentVersionT = Aws::String>
206 CreateImageBuilderRequest& WithAppstreamAgentVersion(AppstreamAgentVersionT&& value) { SetAppstreamAgentVersion(std::forward<AppstreamAgentVersionT>(value)); return *this;}
208
210
220 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
221 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
222 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
223 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
224 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
225 CreateImageBuilderRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
226 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
227 CreateImageBuilderRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
228 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
229 }
231
233
238 inline const Aws::Vector<AccessEndpoint>& GetAccessEndpoints() const { return m_accessEndpoints; }
239 inline bool AccessEndpointsHasBeenSet() const { return m_accessEndpointsHasBeenSet; }
240 template<typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
241 void SetAccessEndpoints(AccessEndpointsT&& value) { m_accessEndpointsHasBeenSet = true; m_accessEndpoints = std::forward<AccessEndpointsT>(value); }
242 template<typename AccessEndpointsT = Aws::Vector<AccessEndpoint>>
243 CreateImageBuilderRequest& WithAccessEndpoints(AccessEndpointsT&& value) { SetAccessEndpoints(std::forward<AccessEndpointsT>(value)); return *this;}
244 template<typename AccessEndpointsT = AccessEndpoint>
245 CreateImageBuilderRequest& AddAccessEndpoints(AccessEndpointsT&& value) { m_accessEndpointsHasBeenSet = true; m_accessEndpoints.emplace_back(std::forward<AccessEndpointsT>(value)); return *this; }
247 private:
248
249 Aws::String m_name;
250 bool m_nameHasBeenSet = false;
251
252 Aws::String m_imageName;
253 bool m_imageNameHasBeenSet = false;
254
255 Aws::String m_imageArn;
256 bool m_imageArnHasBeenSet = false;
257
258 Aws::String m_instanceType;
259 bool m_instanceTypeHasBeenSet = false;
260
261 Aws::String m_description;
262 bool m_descriptionHasBeenSet = false;
263
264 Aws::String m_displayName;
265 bool m_displayNameHasBeenSet = false;
266
267 VpcConfig m_vpcConfig;
268 bool m_vpcConfigHasBeenSet = false;
269
270 Aws::String m_iamRoleArn;
271 bool m_iamRoleArnHasBeenSet = false;
272
273 bool m_enableDefaultInternetAccess{false};
274 bool m_enableDefaultInternetAccessHasBeenSet = false;
275
276 DomainJoinInfo m_domainJoinInfo;
277 bool m_domainJoinInfoHasBeenSet = false;
278
279 Aws::String m_appstreamAgentVersion;
280 bool m_appstreamAgentVersionHasBeenSet = false;
281
283 bool m_tagsHasBeenSet = false;
284
285 Aws::Vector<AccessEndpoint> m_accessEndpoints;
286 bool m_accessEndpointsHasBeenSet = false;
287 };
288
289} // namespace Model
290} // namespace AppStream
291} // 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