7#include <aws/appstream/AppStreamRequest.h>
8#include <aws/appstream/AppStream_EXPORTS.h>
9#include <aws/appstream/model/AccessEndpoint.h>
10#include <aws/appstream/model/DomainJoinInfo.h>
11#include <aws/appstream/model/VolumeConfig.h>
12#include <aws/appstream/model/VpcConfig.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
45 template <
typename NameT = Aws::String>
47 m_nameHasBeenSet =
true;
48 m_name = std::forward<NameT>(value);
50 template <
typename NameT = Aws::String>
52 SetName(std::forward<NameT>(value));
63 template <
typename ImageNameT = Aws::String>
65 m_imageNameHasBeenSet =
true;
66 m_imageName = std::forward<ImageNameT>(value);
68 template <
typename ImageNameT = Aws::String>
81 template <
typename ImageArnT = Aws::String>
83 m_imageArnHasBeenSet =
true;
84 m_imageArn = std::forward<ImageArnT>(value);
86 template <
typename ImageArnT = Aws::String>
130 template <
typename InstanceTypeT = Aws::String>
132 m_instanceTypeHasBeenSet =
true;
133 m_instanceType = std::forward<InstanceTypeT>(value);
135 template <
typename InstanceTypeT = Aws::String>
148 template <
typename DescriptionT = Aws::String>
150 m_descriptionHasBeenSet =
true;
151 m_description = std::forward<DescriptionT>(value);
153 template <
typename DescriptionT = Aws::String>
166 template <
typename DisplayNameT = Aws::String>
168 m_displayNameHasBeenSet =
true;
169 m_displayName = std::forward<DisplayNameT>(value);
171 template <
typename DisplayNameT = Aws::String>
185 template <
typename VpcConfigT = VpcConfig>
187 m_vpcConfigHasBeenSet =
true;
188 m_vpcConfig = std::forward<VpcConfigT>(value);
190 template <
typename VpcConfigT = VpcConfig>
213 template <
typename IamRoleArnT = Aws::String>
215 m_iamRoleArnHasBeenSet =
true;
216 m_iamRoleArn = std::forward<IamRoleArnT>(value);
218 template <
typename IamRoleArnT = Aws::String>
232 m_enableDefaultInternetAccessHasBeenSet =
true;
233 m_enableDefaultInternetAccess = value;
248 template <
typename DomainJoinInfoT = DomainJoinInfo>
250 m_domainJoinInfoHasBeenSet =
true;
251 m_domainJoinInfo = std::forward<DomainJoinInfoT>(value);
253 template <
typename DomainJoinInfoT = DomainJoinInfo>
268 template <
typename AppstreamAgentVersionT = Aws::String>
270 m_appstreamAgentVersionHasBeenSet =
true;
271 m_appstreamAgentVersion = std::forward<AppstreamAgentVersionT>(value);
273 template <
typename AppstreamAgentVersionT = Aws::String>
294 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
296 m_tagsHasBeenSet =
true;
297 m_tags = std::forward<TagsT>(value);
299 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
301 SetTags(std::forward<TagsT>(value));
304 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
306 m_tagsHasBeenSet =
true;
307 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
320 template <
typename AccessEndpo
intsT = Aws::Vector<AccessEndpo
int>>
322 m_accessEndpointsHasBeenSet =
true;
323 m_accessEndpoints = std::forward<AccessEndpointsT>(value);
325 template <
typename AccessEndpo
intsT = Aws::Vector<AccessEndpo
int>>
330 template <
typename AccessEndpo
intsT = AccessEndpo
int>
332 m_accessEndpointsHasBeenSet =
true;
333 m_accessEndpoints.emplace_back(std::forward<AccessEndpointsT>(value));
346 template <
typename RootVolumeConfigT = VolumeConfig>
348 m_rootVolumeConfigHasBeenSet =
true;
349 m_rootVolumeConfig = std::forward<RootVolumeConfigT>(value);
351 template <
typename RootVolumeConfigT = VolumeConfig>
389 template <
typename SoftwaresToInstallT = Aws::Vector<Aws::String>>
391 m_softwaresToInstallHasBeenSet =
true;
392 m_softwaresToInstall = std::forward<SoftwaresToInstallT>(value);
394 template <
typename SoftwaresToInstallT = Aws::Vector<Aws::String>>
399 template <
typename SoftwaresToInstallT = Aws::String>
401 m_softwaresToInstallHasBeenSet =
true;
402 m_softwaresToInstall.emplace_back(std::forward<SoftwaresToInstallT>(value));
438 template <
typename SoftwaresToUninstallT = Aws::Vector<Aws::String>>
440 m_softwaresToUninstallHasBeenSet =
true;
441 m_softwaresToUninstall = std::forward<SoftwaresToUninstallT>(value);
443 template <
typename SoftwaresToUninstallT = Aws::Vector<Aws::String>>
448 template <
typename SoftwaresToUninstallT = Aws::String>
450 m_softwaresToUninstallHasBeenSet =
true;
451 m_softwaresToUninstall.emplace_back(std::forward<SoftwaresToUninstallT>(value));
472 bool m_enableDefaultInternetAccess{
false};
474 DomainJoinInfo m_domainJoinInfo;
482 VolumeConfig m_rootVolumeConfig;
487 bool m_nameHasBeenSet =
false;
488 bool m_imageNameHasBeenSet =
false;
489 bool m_imageArnHasBeenSet =
false;
490 bool m_instanceTypeHasBeenSet =
false;
491 bool m_descriptionHasBeenSet =
false;
492 bool m_displayNameHasBeenSet =
false;
493 bool m_vpcConfigHasBeenSet =
false;
494 bool m_iamRoleArnHasBeenSet =
false;
495 bool m_enableDefaultInternetAccessHasBeenSet =
false;
496 bool m_domainJoinInfoHasBeenSet =
false;
497 bool m_appstreamAgentVersionHasBeenSet =
false;
498 bool m_tagsHasBeenSet =
false;
499 bool m_accessEndpointsHasBeenSet =
false;
500 bool m_rootVolumeConfigHasBeenSet =
false;
501 bool m_softwaresToInstallHasBeenSet =
false;
502 bool m_softwaresToUninstallHasBeenSet =
false;
CreateImageBuilderRequest & WithDomainJoinInfo(DomainJoinInfoT &&value)
CreateImageBuilderRequest & WithAccessEndpoints(AccessEndpointsT &&value)
const VolumeConfig & GetRootVolumeConfig() const
AWS_APPSTREAM_API CreateImageBuilderRequest()=default
bool ImageNameHasBeenSet() const
CreateImageBuilderRequest & WithDisplayName(DisplayNameT &&value)
const Aws::String & GetAppstreamAgentVersion() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateImageBuilderRequest & WithImageArn(ImageArnT &&value)
const VpcConfig & GetVpcConfig() const
bool GetEnableDefaultInternetAccess() const
bool SoftwaresToInstallHasBeenSet() const
bool SoftwaresToUninstallHasBeenSet() const
CreateImageBuilderRequest & WithName(NameT &&value)
const Aws::Vector< Aws::String > & GetSoftwaresToUninstall() const
bool EnableDefaultInternetAccessHasBeenSet() const
bool DescriptionHasBeenSet() const
CreateImageBuilderRequest & WithIamRoleArn(IamRoleArnT &&value)
CreateImageBuilderRequest & AddSoftwaresToUninstall(SoftwaresToUninstallT &&value)
bool VpcConfigHasBeenSet() const
const Aws::String & GetIamRoleArn() const
const Aws::Vector< AccessEndpoint > & GetAccessEndpoints() const
CreateImageBuilderRequest & WithAppstreamAgentVersion(AppstreamAgentVersionT &&value)
CreateImageBuilderRequest & WithImageName(ImageNameT &&value)
const Aws::Vector< Aws::String > & GetSoftwaresToInstall() const
const Aws::String & GetInstanceType() const
const Aws::String & GetDescription() const
void SetImageArn(ImageArnT &&value)
void SetDescription(DescriptionT &&value)
void SetRootVolumeConfig(RootVolumeConfigT &&value)
CreateImageBuilderRequest & WithVpcConfig(VpcConfigT &&value)
void SetAccessEndpoints(AccessEndpointsT &&value)
bool DisplayNameHasBeenSet() const
CreateImageBuilderRequest & WithEnableDefaultInternetAccess(bool value)
bool ImageArnHasBeenSet() const
CreateImageBuilderRequest & WithRootVolumeConfig(RootVolumeConfigT &&value)
const Aws::String & GetDisplayName() const
void SetDisplayName(DisplayNameT &&value)
CreateImageBuilderRequest & AddSoftwaresToInstall(SoftwaresToInstallT &&value)
void SetDomainJoinInfo(DomainJoinInfoT &&value)
CreateImageBuilderRequest & WithDescription(DescriptionT &&value)
void SetEnableDefaultInternetAccess(bool value)
CreateImageBuilderRequest & AddAccessEndpoints(AccessEndpointsT &&value)
AWS_APPSTREAM_API Aws::String SerializePayload() const override
CreateImageBuilderRequest & WithSoftwaresToUninstall(SoftwaresToUninstallT &&value)
void SetIamRoleArn(IamRoleArnT &&value)
CreateImageBuilderRequest & WithInstanceType(InstanceTypeT &&value)
bool RootVolumeConfigHasBeenSet() const
const DomainJoinInfo & GetDomainJoinInfo() const
const Aws::String & GetImageArn() const
void SetSoftwaresToUninstall(SoftwaresToUninstallT &&value)
bool AccessEndpointsHasBeenSet() const
CreateImageBuilderRequest & WithTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
void SetSoftwaresToInstall(SoftwaresToInstallT &&value)
const Aws::String & GetName() const
void SetName(NameT &&value)
bool InstanceTypeHasBeenSet() const
bool TagsHasBeenSet() const
bool IamRoleArnHasBeenSet() const
CreateImageBuilderRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetTags(TagsT &&value)
void SetImageName(ImageNameT &&value)
void SetVpcConfig(VpcConfigT &&value)
const Aws::String & GetImageName() const
bool DomainJoinInfoHasBeenSet() const
bool NameHasBeenSet() const
void SetAppstreamAgentVersion(AppstreamAgentVersionT &&value)
bool AppstreamAgentVersionHasBeenSet() const
void SetInstanceType(InstanceTypeT &&value)
AWS_APPSTREAM_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateImageBuilderRequest & WithSoftwaresToInstall(SoftwaresToInstallT &&value)
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