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>
140 template<
typename ImageBuilderNameT = Aws::String>
141 void SetImageBuilderName(ImageBuilderNameT&& value) { m_imageBuilderNameHasBeenSet =
true; m_imageBuilderName = std::forward<ImageBuilderNameT>(value); }
142 template<
typename ImageBuilderNameT = Aws::String>
162 template<
typename DescriptionT = Aws::String>
163 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
164 template<
typename DescriptionT = Aws::String>
174 template<
typename StateChangeReasonT = ImageStateChangeReason>
175 void SetStateChangeReason(StateChangeReasonT&& value) { m_stateChangeReasonHasBeenSet =
true; m_stateChangeReason = std::forward<StateChangeReasonT>(value); }
176 template<
typename StateChangeReasonT = ImageStateChangeReason>
186 template<
typename ApplicationsT = Aws::Vector<Application>>
187 void SetApplications(ApplicationsT&& value) { m_applicationsHasBeenSet =
true; m_applications = std::forward<ApplicationsT>(value); }
188 template<
typename ApplicationsT = Aws::Vector<Application>>
190 template<
typename ApplicationsT = Application>
191 Image&
AddApplications(ApplicationsT&& value) { m_applicationsHasBeenSet =
true; m_applications.emplace_back(std::forward<ApplicationsT>(value));
return *
this; }
200 template<
typename CreatedTimeT = Aws::Utils::DateTime>
201 void SetCreatedTime(CreatedTimeT&& value) { m_createdTimeHasBeenSet =
true; m_createdTime = std::forward<CreatedTimeT>(value); }
202 template<
typename CreatedTimeT = Aws::Utils::DateTime>
213 template<
typename PublicBaseImageReleasedDateT = Aws::Utils::DateTime>
214 void SetPublicBaseImageReleasedDate(PublicBaseImageReleasedDateT&& value) { m_publicBaseImageReleasedDateHasBeenSet =
true; m_publicBaseImageReleasedDate = std::forward<PublicBaseImageReleasedDateT>(value); }
215 template<
typename PublicBaseImageReleasedDateT = Aws::Utils::DateTime>
226 template<
typename AppstreamAgentVersionT = Aws::String>
227 void SetAppstreamAgentVersion(AppstreamAgentVersionT&& value) { m_appstreamAgentVersionHasBeenSet =
true; m_appstreamAgentVersion = std::forward<AppstreamAgentVersionT>(value); }
228 template<
typename AppstreamAgentVersionT = Aws::String>
239 template<
typename ImagePermissionsT = ImagePermissions>
240 void SetImagePermissions(ImagePermissionsT&& value) { m_imagePermissionsHasBeenSet =
true; m_imagePermissions = std::forward<ImagePermissionsT>(value); }
241 template<
typename ImagePermissionsT = ImagePermissions>
251 template<
typename ImageErrorsT = Aws::Vector<ResourceError>>
252 void SetImageErrors(ImageErrorsT&& value) { m_imageErrorsHasBeenSet =
true; m_imageErrors = std::forward<ImageErrorsT>(value); }
253 template<
typename ImageErrorsT = Aws::Vector<ResourceError>>
255 template<
typename ImageErrorsT = ResourceError>
256 Image&
AddImageErrors(ImageErrorsT&& value) { m_imageErrorsHasBeenSet =
true; m_imageErrors.emplace_back(std::forward<ImageErrorsT>(value));
return *
this; }
281 template<
typename SupportedInstanceFamiliesT = Aws::Vector<Aws::String>>
282 void SetSupportedInstanceFamilies(SupportedInstanceFamiliesT&& value) { m_supportedInstanceFamiliesHasBeenSet =
true; m_supportedInstanceFamilies = std::forward<SupportedInstanceFamiliesT>(value); }
283 template<
typename SupportedInstanceFamiliesT = Aws::Vector<Aws::String>>
285 template<
typename SupportedInstanceFamiliesT = Aws::String>
286 Image&
AddSupportedInstanceFamilies(SupportedInstanceFamiliesT&& value) { m_supportedInstanceFamiliesHasBeenSet =
true; m_supportedInstanceFamilies.emplace_back(std::forward<SupportedInstanceFamiliesT>(value));
return *
this; }
312 bool m_nameHasBeenSet =
false;
315 bool m_arnHasBeenSet =
false;
318 bool m_baseImageArnHasBeenSet =
false;
321 bool m_displayNameHasBeenSet =
false;
324 bool m_stateHasBeenSet =
false;
327 bool m_visibilityHasBeenSet =
false;
329 bool m_imageBuilderSupported{
false};
330 bool m_imageBuilderSupportedHasBeenSet =
false;
333 bool m_imageBuilderNameHasBeenSet =
false;
336 bool m_platformHasBeenSet =
false;
339 bool m_descriptionHasBeenSet =
false;
341 ImageStateChangeReason m_stateChangeReason;
342 bool m_stateChangeReasonHasBeenSet =
false;
345 bool m_applicationsHasBeenSet =
false;
348 bool m_createdTimeHasBeenSet =
false;
351 bool m_publicBaseImageReleasedDateHasBeenSet =
false;
354 bool m_appstreamAgentVersionHasBeenSet =
false;
356 ImagePermissions m_imagePermissions;
357 bool m_imagePermissionsHasBeenSet =
false;
360 bool m_imageErrorsHasBeenSet =
false;
363 bool m_latestAppstreamAgentVersionHasBeenSet =
false;
366 bool m_supportedInstanceFamiliesHasBeenSet =
false;
369 bool m_dynamicAppProvidersEnabledHasBeenSet =
false;
372 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