7#include <aws/appstream/AppStream_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/appstream/model/ImageState.h>
10#include <aws/appstream/model/VisibilityType.h>
11#include <aws/appstream/model/PlatformType.h>
12#include <aws/appstream/model/ImageStateChangeReason.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/core/utils/DateTime.h>
15#include <aws/appstream/model/ImagePermissions.h>
16#include <aws/appstream/model/LatestAppstreamAgentVersion.h>
17#include <aws/appstream/model/DynamicAppProvidersEnabled.h>
18#include <aws/appstream/model/ImageSharedWithOthers.h>
19#include <aws/appstream/model/Application.h>
20#include <aws/appstream/model/ResourceError.h>
46 AWS_APPSTREAM_API
Image() =
default;
58 template<
typename NameT = Aws::String>
59 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
60 template<
typename NameT = Aws::String>
70 template<
typename ArnT = Aws::String>
71 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
72 template<
typename ArnT = Aws::String>
82 template<
typename BaseImageArnT = Aws::String>
83 void SetBaseImageArn(BaseImageArnT&& value) { m_baseImageArnHasBeenSet =
true; m_baseImageArn = std::forward<BaseImageArnT>(value); }
84 template<
typename BaseImageArnT = Aws::String>
94 template<
typename DisplayNameT = Aws::String>
95 void SetDisplayName(DisplayNameT&& value) { m_displayNameHasBeenSet =
true; m_displayName = std::forward<DisplayNameT>(value); }
96 template<
typename DisplayNameT = Aws::String>
139 template<
typename ImageBuilderNameT = Aws::String>
140 void SetImageBuilderName(ImageBuilderNameT&& value) { m_imageBuilderNameHasBeenSet =
true; m_imageBuilderName = std::forward<ImageBuilderNameT>(value); }
141 template<
typename ImageBuilderNameT = Aws::String>
161 template<
typename DescriptionT = Aws::String>
162 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
163 template<
typename DescriptionT = Aws::String>
173 template<
typename StateChangeReasonT = ImageStateChangeReason>
174 void SetStateChangeReason(StateChangeReasonT&& value) { m_stateChangeReasonHasBeenSet =
true; m_stateChangeReason = std::forward<StateChangeReasonT>(value); }
175 template<
typename StateChangeReasonT = ImageStateChangeReason>
185 template<
typename ApplicationsT = Aws::Vector<Application>>
186 void SetApplications(ApplicationsT&& value) { m_applicationsHasBeenSet =
true; m_applications = std::forward<ApplicationsT>(value); }
187 template<
typename ApplicationsT = Aws::Vector<Application>>
189 template<
typename ApplicationsT = Application>
190 Image&
AddApplications(ApplicationsT&& value) { m_applicationsHasBeenSet =
true; m_applications.emplace_back(std::forward<ApplicationsT>(value));
return *
this; }
199 template<
typename CreatedTimeT = Aws::Utils::DateTime>
200 void SetCreatedTime(CreatedTimeT&& value) { m_createdTimeHasBeenSet =
true; m_createdTime = std::forward<CreatedTimeT>(value); }
201 template<
typename CreatedTimeT = Aws::Utils::DateTime>
212 template<
typename PublicBaseImageReleasedDateT = Aws::Utils::DateTime>
213 void SetPublicBaseImageReleasedDate(PublicBaseImageReleasedDateT&& value) { m_publicBaseImageReleasedDateHasBeenSet =
true; m_publicBaseImageReleasedDate = std::forward<PublicBaseImageReleasedDateT>(value); }
214 template<
typename PublicBaseImageReleasedDateT = Aws::Utils::DateTime>
225 template<
typename AppstreamAgentVersionT = Aws::String>
226 void SetAppstreamAgentVersion(AppstreamAgentVersionT&& value) { m_appstreamAgentVersionHasBeenSet =
true; m_appstreamAgentVersion = std::forward<AppstreamAgentVersionT>(value); }
227 template<
typename AppstreamAgentVersionT = Aws::String>
238 template<
typename ImagePermissionsT = ImagePermissions>
239 void SetImagePermissions(ImagePermissionsT&& value) { m_imagePermissionsHasBeenSet =
true; m_imagePermissions = std::forward<ImagePermissionsT>(value); }
240 template<
typename ImagePermissionsT = ImagePermissions>
250 template<
typename ImageErrorsT = Aws::Vector<ResourceError>>
251 void SetImageErrors(ImageErrorsT&& value) { m_imageErrorsHasBeenSet =
true; m_imageErrors = std::forward<ImageErrorsT>(value); }
252 template<
typename ImageErrorsT = Aws::Vector<ResourceError>>
254 template<
typename ImageErrorsT = ResourceError>
255 Image&
AddImageErrors(ImageErrorsT&& value) { m_imageErrorsHasBeenSet =
true; m_imageErrors.emplace_back(std::forward<ImageErrorsT>(value));
return *
this; }
280 template<
typename SupportedInstanceFamiliesT = Aws::Vector<Aws::String>>
281 void SetSupportedInstanceFamilies(SupportedInstanceFamiliesT&& value) { m_supportedInstanceFamiliesHasBeenSet =
true; m_supportedInstanceFamilies = std::forward<SupportedInstanceFamiliesT>(value); }
282 template<
typename SupportedInstanceFamiliesT = Aws::Vector<Aws::String>>
284 template<
typename SupportedInstanceFamiliesT = Aws::String>
285 Image&
AddSupportedInstanceFamilies(SupportedInstanceFamiliesT&& value) { m_supportedInstanceFamiliesHasBeenSet =
true; m_supportedInstanceFamilies.emplace_back(std::forward<SupportedInstanceFamiliesT>(value));
return *
this; }
311 bool m_nameHasBeenSet =
false;
314 bool m_arnHasBeenSet =
false;
317 bool m_baseImageArnHasBeenSet =
false;
320 bool m_displayNameHasBeenSet =
false;
323 bool m_stateHasBeenSet =
false;
326 bool m_visibilityHasBeenSet =
false;
328 bool m_imageBuilderSupported{
false};
329 bool m_imageBuilderSupportedHasBeenSet =
false;
332 bool m_imageBuilderNameHasBeenSet =
false;
335 bool m_platformHasBeenSet =
false;
338 bool m_descriptionHasBeenSet =
false;
340 ImageStateChangeReason m_stateChangeReason;
341 bool m_stateChangeReasonHasBeenSet =
false;
344 bool m_applicationsHasBeenSet =
false;
347 bool m_createdTimeHasBeenSet =
false;
350 bool m_publicBaseImageReleasedDateHasBeenSet =
false;
353 bool m_appstreamAgentVersionHasBeenSet =
false;
355 ImagePermissions m_imagePermissions;
356 bool m_imagePermissionsHasBeenSet =
false;
359 bool m_imageErrorsHasBeenSet =
false;
362 bool m_latestAppstreamAgentVersionHasBeenSet =
false;
365 bool m_supportedInstanceFamiliesHasBeenSet =
false;
368 bool m_dynamicAppProvidersEnabledHasBeenSet =
false;
371 bool m_imageSharedWithOthersHasBeenSet =
false;
void SetVisibility(VisibilityType value)
void SetImageBuilderName(ImageBuilderNameT &&value)
bool AppstreamAgentVersionHasBeenSet() const
Image & AddApplications(ApplicationsT &&value)
AWS_APPSTREAM_API Image(Aws::Utils::Json::JsonView jsonValue)
DynamicAppProvidersEnabled GetDynamicAppProvidersEnabled() const
AWS_APPSTREAM_API Image & operator=(Aws::Utils::Json::JsonView jsonValue)
Image & WithBaseImageArn(BaseImageArnT &&value)
void SetArn(ArnT &&value)
const Aws::Vector< ResourceError > & GetImageErrors() const
Image & WithImagePermissions(ImagePermissionsT &&value)
const ImagePermissions & GetImagePermissions() const
bool ImageBuilderNameHasBeenSet() const
Image & WithDescription(DescriptionT &&value)
void SetLatestAppstreamAgentVersion(LatestAppstreamAgentVersion value)
bool DisplayNameHasBeenSet() const
void SetName(NameT &&value)
PlatformType GetPlatform() const
Image & WithLatestAppstreamAgentVersion(LatestAppstreamAgentVersion value)
bool StateHasBeenSet() const
Image & WithArn(ArnT &&value)
const Aws::String & GetAppstreamAgentVersion() const
void SetDynamicAppProvidersEnabled(DynamicAppProvidersEnabled value)
VisibilityType GetVisibility() const
const Aws::String & GetBaseImageArn() const
const Aws::Vector< Application > & GetApplications() const
Image & WithPlatform(PlatformType value)
Image & WithName(NameT &&value)
Image & WithCreatedTime(CreatedTimeT &&value)
Image & WithSupportedInstanceFamilies(SupportedInstanceFamiliesT &&value)
void SetImageErrors(ImageErrorsT &&value)
AWS_APPSTREAM_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetName() const
Image & WithDynamicAppProvidersEnabled(DynamicAppProvidersEnabled value)
bool ImagePermissionsHasBeenSet() const
void SetPublicBaseImageReleasedDate(PublicBaseImageReleasedDateT &&value)
void SetDisplayName(DisplayNameT &&value)
bool ApplicationsHasBeenSet() const
const Aws::String & GetArn() const
Image & WithDisplayName(DisplayNameT &&value)
Image & AddSupportedInstanceFamilies(SupportedInstanceFamiliesT &&value)
Image & AddImageErrors(ImageErrorsT &&value)
bool ImageSharedWithOthersHasBeenSet() const
bool DescriptionHasBeenSet() const
const Aws::Utils::DateTime & GetPublicBaseImageReleasedDate() const
bool VisibilityHasBeenSet() const
bool ImageErrorsHasBeenSet() const
Image & WithStateChangeReason(StateChangeReasonT &&value)
bool StateChangeReasonHasBeenSet() const
bool SupportedInstanceFamiliesHasBeenSet() const
Image & WithImageSharedWithOthers(ImageSharedWithOthers value)
AWS_APPSTREAM_API Image()=default
const Aws::String & GetImageBuilderName() const
bool DynamicAppProvidersEnabledHasBeenSet() const
void SetCreatedTime(CreatedTimeT &&value)
Image & WithPublicBaseImageReleasedDate(PublicBaseImageReleasedDateT &&value)
Image & WithImageBuilderName(ImageBuilderNameT &&value)
Image & WithImageErrors(ImageErrorsT &&value)
bool BaseImageArnHasBeenSet() const
Image & WithState(ImageState value)
Image & WithApplications(ApplicationsT &&value)
bool ImageBuilderSupportedHasBeenSet() const
void SetSupportedInstanceFamilies(SupportedInstanceFamiliesT &&value)
const Aws::Vector< Aws::String > & GetSupportedInstanceFamilies() const
bool LatestAppstreamAgentVersionHasBeenSet() const
LatestAppstreamAgentVersion GetLatestAppstreamAgentVersion() const
Image & WithAppstreamAgentVersion(AppstreamAgentVersionT &&value)
void SetImageBuilderSupported(bool value)
bool PublicBaseImageReleasedDateHasBeenSet() const
bool CreatedTimeHasBeenSet() const
Image & WithImageBuilderSupported(bool value)
void SetApplications(ApplicationsT &&value)
void SetImageSharedWithOthers(ImageSharedWithOthers value)
void SetDescription(DescriptionT &&value)
void SetImagePermissions(ImagePermissionsT &&value)
const Aws::String & GetDisplayName() const
void SetPlatform(PlatformType value)
bool GetImageBuilderSupported() const
Image & WithVisibility(VisibilityType value)
ImageState GetState() const
const Aws::Utils::DateTime & GetCreatedTime() const
void SetStateChangeReason(StateChangeReasonT &&value)
void SetBaseImageArn(BaseImageArnT &&value)
bool NameHasBeenSet() const
const Aws::String & GetDescription() const
void SetState(ImageState value)
bool ArnHasBeenSet() const
const ImageStateChangeReason & GetStateChangeReason() const
void SetAppstreamAgentVersion(AppstreamAgentVersionT &&value)
ImageSharedWithOthers GetImageSharedWithOthers() const
bool PlatformHasBeenSet() const
LatestAppstreamAgentVersion
DynamicAppProvidersEnabled
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue