7#include <aws/appstream/AppStream_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/appstream/model/S3Location.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/appstream/model/PlatformType.h>
52 template<
typename NameT = Aws::String>
53 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
54 template<
typename NameT = Aws::String>
64 template<
typename DisplayNameT = Aws::String>
65 void SetDisplayName(DisplayNameT&& value) { m_displayNameHasBeenSet =
true; m_displayName = std::forward<DisplayNameT>(value); }
66 template<
typename DisplayNameT = Aws::String>
76 template<
typename IconURLT = Aws::String>
77 void SetIconURL(IconURLT&& value) { m_iconURLHasBeenSet =
true; m_iconURL = std::forward<IconURLT>(value); }
78 template<
typename IconURLT = Aws::String>
88 template<
typename LaunchPathT = Aws::String>
89 void SetLaunchPath(LaunchPathT&& value) { m_launchPathHasBeenSet =
true; m_launchPath = std::forward<LaunchPathT>(value); }
90 template<
typename LaunchPathT = Aws::String>
100 template<
typename LaunchParametersT = Aws::String>
101 void SetLaunchParameters(LaunchParametersT&& value) { m_launchParametersHasBeenSet =
true; m_launchParameters = std::forward<LaunchParametersT>(value); }
102 template<
typename LaunchParametersT = Aws::String>
113 inline void SetEnabled(
bool value) { m_enabledHasBeenSet =
true; m_enabled = value; }
123 template<
typename MetadataT = Aws::Map<Aws::String, Aws::String>>
124 void SetMetadata(MetadataT&& value) { m_metadataHasBeenSet =
true; m_metadata = std::forward<MetadataT>(value); }
125 template<
typename MetadataT = Aws::Map<Aws::String, Aws::String>>
127 template<
typename MetadataKeyT = Aws::String,
typename MetadataValueT = Aws::String>
129 m_metadataHasBeenSet =
true; m_metadata.emplace(std::forward<MetadataKeyT>(key), std::forward<MetadataValueT>(value));
return *
this;
139 template<
typename WorkingDirectoryT = Aws::String>
140 void SetWorkingDirectory(WorkingDirectoryT&& value) { m_workingDirectoryHasBeenSet =
true; m_workingDirectory = std::forward<WorkingDirectoryT>(value); }
141 template<
typename WorkingDirectoryT = Aws::String>
151 template<
typename DescriptionT = Aws::String>
152 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
153 template<
typename DescriptionT = Aws::String>
163 template<
typename ArnT = Aws::String>
164 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
165 template<
typename ArnT = Aws::String>
175 template<
typename AppBlockArnT = Aws::String>
176 void SetAppBlockArn(AppBlockArnT&& value) { m_appBlockArnHasBeenSet =
true; m_appBlockArn = std::forward<AppBlockArnT>(value); }
177 template<
typename AppBlockArnT = Aws::String>
187 template<
typename IconS3LocationT = S3Location>
188 void SetIconS3Location(IconS3LocationT&& value) { m_iconS3LocationHasBeenSet =
true; m_iconS3Location = std::forward<IconS3LocationT>(value); }
189 template<
typename IconS3LocationT = S3Location>
199 template<
typename PlatformsT = Aws::Vector<PlatformType>>
200 void SetPlatforms(PlatformsT&& value) { m_platformsHasBeenSet =
true; m_platforms = std::forward<PlatformsT>(value); }
201 template<
typename PlatformsT = Aws::Vector<PlatformType>>
212 template<
typename InstanceFamiliesT = Aws::Vector<Aws::String>>
213 void SetInstanceFamilies(InstanceFamiliesT&& value) { m_instanceFamiliesHasBeenSet =
true; m_instanceFamilies = std::forward<InstanceFamiliesT>(value); }
214 template<
typename InstanceFamiliesT = Aws::Vector<Aws::String>>
216 template<
typename InstanceFamiliesT = Aws::String>
217 Application&
AddInstanceFamilies(InstanceFamiliesT&& value) { m_instanceFamiliesHasBeenSet =
true; m_instanceFamilies.emplace_back(std::forward<InstanceFamiliesT>(value));
return *
this; }
226 template<
typename CreatedTimeT = Aws::Utils::DateTime>
227 void SetCreatedTime(CreatedTimeT&& value) { m_createdTimeHasBeenSet =
true; m_createdTime = std::forward<CreatedTimeT>(value); }
228 template<
typename CreatedTimeT = Aws::Utils::DateTime>
234 bool m_nameHasBeenSet =
false;
237 bool m_displayNameHasBeenSet =
false;
240 bool m_iconURLHasBeenSet =
false;
243 bool m_launchPathHasBeenSet =
false;
246 bool m_launchParametersHasBeenSet =
false;
248 bool m_enabled{
false};
249 bool m_enabledHasBeenSet =
false;
252 bool m_metadataHasBeenSet =
false;
255 bool m_workingDirectoryHasBeenSet =
false;
258 bool m_descriptionHasBeenSet =
false;
261 bool m_arnHasBeenSet =
false;
264 bool m_appBlockArnHasBeenSet =
false;
266 S3Location m_iconS3Location;
267 bool m_iconS3LocationHasBeenSet =
false;
270 bool m_platformsHasBeenSet =
false;
273 bool m_instanceFamiliesHasBeenSet =
false;
276 bool m_createdTimeHasBeenSet =
false;
void SetLaunchParameters(LaunchParametersT &&value)
const Aws::String & GetAppBlockArn() const
const Aws::Vector< PlatformType > & GetPlatforms() const
const Aws::Map< Aws::String, Aws::String > & GetMetadata() const
void SetDisplayName(DisplayNameT &&value)
void SetLaunchPath(LaunchPathT &&value)
Application & WithDisplayName(DisplayNameT &&value)
bool CreatedTimeHasBeenSet() const
void SetMetadata(MetadataT &&value)
void SetWorkingDirectory(WorkingDirectoryT &&value)
bool MetadataHasBeenSet() const
Application & WithWorkingDirectory(WorkingDirectoryT &&value)
bool NameHasBeenSet() const
void SetPlatforms(PlatformsT &&value)
bool PlatformsHasBeenSet() const
AWS_APPSTREAM_API Application(Aws::Utils::Json::JsonView jsonValue)
AWS_APPSTREAM_API Application()=default
bool AppBlockArnHasBeenSet() const
Application & WithLaunchParameters(LaunchParametersT &&value)
const Aws::String & GetName() const
bool WorkingDirectoryHasBeenSet() const
void SetName(NameT &&value)
void SetCreatedTime(CreatedTimeT &&value)
Application & WithAppBlockArn(AppBlockArnT &&value)
const Aws::Utils::DateTime & GetCreatedTime() const
void SetAppBlockArn(AppBlockArnT &&value)
Application & WithIconURL(IconURLT &&value)
void SetInstanceFamilies(InstanceFamiliesT &&value)
Application & WithArn(ArnT &&value)
Application & WithIconS3Location(IconS3LocationT &&value)
Application & WithName(NameT &&value)
Application & WithPlatforms(PlatformsT &&value)
bool InstanceFamiliesHasBeenSet() const
const Aws::String & GetDescription() const
bool EnabledHasBeenSet() const
AWS_APPSTREAM_API Application & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetIconS3Location(IconS3LocationT &&value)
bool LaunchPathHasBeenSet() const
bool DisplayNameHasBeenSet() const
Application & WithDescription(DescriptionT &&value)
const Aws::Vector< Aws::String > & GetInstanceFamilies() const
bool LaunchParametersHasBeenSet() const
bool IconURLHasBeenSet() const
void SetIconURL(IconURLT &&value)
const Aws::String & GetWorkingDirectory() const
const Aws::String & GetArn() const
const Aws::String & GetLaunchParameters() const
Application & WithEnabled(bool value)
void SetDescription(DescriptionT &&value)
AWS_APPSTREAM_API Aws::Utils::Json::JsonValue Jsonize() const
const S3Location & GetIconS3Location() const
Application & WithCreatedTime(CreatedTimeT &&value)
Application & WithInstanceFamilies(InstanceFamiliesT &&value)
Application & AddMetadata(MetadataKeyT &&key, MetadataValueT &&value)
bool ArnHasBeenSet() const
const Aws::String & GetDisplayName() const
Application & WithMetadata(MetadataT &&value)
const Aws::String & GetIconURL() const
Application & WithLaunchPath(LaunchPathT &&value)
bool IconS3LocationHasBeenSet() const
void SetArn(ArnT &&value)
const Aws::String & GetLaunchPath() const
void SetEnabled(bool value)
bool DescriptionHasBeenSet() const
Application & AddInstanceFamilies(InstanceFamiliesT &&value)
Application & AddPlatforms(PlatformType value)
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
Aws::Utils::Json::JsonValue JsonValue