7#include <aws/drs/Drs_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/drs/model/LaunchDisposition.h>
10#include <aws/drs/model/Licensing.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/drs/model/TargetInstanceTypeRightSizingMethod.h>
50 template<
typename ArnT = Aws::String>
51 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
52 template<
typename ArnT = Aws::String>
62 inline void SetCopyPrivateIp(
bool value) { m_copyPrivateIpHasBeenSet =
true; m_copyPrivateIp = value; }
72 inline void SetCopyTags(
bool value) { m_copyTagsHasBeenSet =
true; m_copyTags = value; }
82 template<
typename ExportBucketArnT = Aws::String>
83 void SetExportBucketArn(ExportBucketArnT&& value) { m_exportBucketArnHasBeenSet =
true; m_exportBucketArn = std::forward<ExportBucketArnT>(value); }
84 template<
typename ExportBucketArnT = Aws::String>
94 template<
typename LaunchConfigurationTemplateIDT = Aws::String>
95 void SetLaunchConfigurationTemplateID(LaunchConfigurationTemplateIDT&& value) { m_launchConfigurationTemplateIDHasBeenSet =
true; m_launchConfigurationTemplateID = std::forward<LaunchConfigurationTemplateIDT>(value); }
96 template<
typename LaunchConfigurationTemplateIDT = Aws::String>
128 template<
typename LicensingT = Licensing>
129 void SetLicensing(LicensingT&& value) { m_licensingHasBeenSet =
true; m_licensing = std::forward<LicensingT>(value); }
130 template<
typename LicensingT = Licensing>
140 inline void SetPostLaunchEnabled(
bool value) { m_postLaunchEnabledHasBeenSet =
true; m_postLaunchEnabled = value; }
150 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
151 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
152 template<
typename TagsT = Aws::Map<Aws::String, Aws::String>>
154 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
156 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
172 bool m_arnHasBeenSet =
false;
174 bool m_copyPrivateIp{
false};
175 bool m_copyPrivateIpHasBeenSet =
false;
177 bool m_copyTags{
false};
178 bool m_copyTagsHasBeenSet =
false;
181 bool m_exportBucketArnHasBeenSet =
false;
184 bool m_launchConfigurationTemplateIDHasBeenSet =
false;
187 bool m_launchDispositionHasBeenSet =
false;
189 bool m_launchIntoSourceInstance{
false};
190 bool m_launchIntoSourceInstanceHasBeenSet =
false;
192 Licensing m_licensing;
193 bool m_licensingHasBeenSet =
false;
195 bool m_postLaunchEnabled{
false};
196 bool m_postLaunchEnabledHasBeenSet =
false;
199 bool m_tagsHasBeenSet =
false;
202 bool m_targetInstanceTypeRightSizingMethodHasBeenSet =
false;
AWS_DRS_API LaunchConfigurationTemplate & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetArn(ArnT &&value)
TargetInstanceTypeRightSizingMethod GetTargetInstanceTypeRightSizingMethod() const
LaunchConfigurationTemplate & WithCopyTags(bool value)
bool TagsHasBeenSet() const
LaunchConfigurationTemplate & WithPostLaunchEnabled(bool value)
LaunchConfigurationTemplate & AddTags(TagsKeyT &&key, TagsValueT &&value)
void SetTargetInstanceTypeRightSizingMethod(TargetInstanceTypeRightSizingMethod value)
const Aws::String & GetExportBucketArn() const
LaunchConfigurationTemplate & WithLaunchConfigurationTemplateID(LaunchConfigurationTemplateIDT &&value)
const Licensing & GetLicensing() const
const Aws::String & GetArn() const
LaunchConfigurationTemplate & WithExportBucketArn(ExportBucketArnT &&value)
LaunchConfigurationTemplate & WithCopyPrivateIp(bool value)
LaunchConfigurationTemplate & WithTargetInstanceTypeRightSizingMethod(TargetInstanceTypeRightSizingMethod value)
void SetLaunchIntoSourceInstance(bool value)
bool LaunchConfigurationTemplateIDHasBeenSet() const
void SetLicensing(LicensingT &&value)
bool ExportBucketArnHasBeenSet() const
void SetPostLaunchEnabled(bool value)
bool TargetInstanceTypeRightSizingMethodHasBeenSet() const
LaunchConfigurationTemplate & WithLicensing(LicensingT &&value)
bool ArnHasBeenSet() const
AWS_DRS_API LaunchConfigurationTemplate(Aws::Utils::Json::JsonView jsonValue)
LaunchConfigurationTemplate & WithTags(TagsT &&value)
LaunchConfigurationTemplate & WithLaunchIntoSourceInstance(bool value)
bool CopyPrivateIpHasBeenSet() const
bool LaunchDispositionHasBeenSet() const
void SetCopyPrivateIp(bool value)
void SetLaunchConfigurationTemplateID(LaunchConfigurationTemplateIDT &&value)
bool GetPostLaunchEnabled() const
void SetExportBucketArn(ExportBucketArnT &&value)
LaunchConfigurationTemplate & WithArn(ArnT &&value)
AWS_DRS_API LaunchConfigurationTemplate()=default
bool PostLaunchEnabledHasBeenSet() const
void SetTags(TagsT &&value)
bool GetCopyPrivateIp() const
LaunchDisposition GetLaunchDisposition() const
bool LaunchIntoSourceInstanceHasBeenSet() const
void SetLaunchDisposition(LaunchDisposition value)
bool CopyTagsHasBeenSet() const
const Aws::String & GetLaunchConfigurationTemplateID() const
void SetCopyTags(bool value)
bool GetLaunchIntoSourceInstance() const
bool LicensingHasBeenSet() const
AWS_DRS_API Aws::Utils::Json::JsonValue Jsonize() const
LaunchConfigurationTemplate & WithLaunchDisposition(LaunchDisposition value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
TargetInstanceTypeRightSizingMethod
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
Aws::Utils::Json::JsonValue JsonValue