7#include <aws/lightsail/Lightsail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/lightsail/model/ResourceLocation.h>
11#include <aws/lightsail/model/ResourceType.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/lightsail/model/DiskSnapshotState.h>
14#include <aws/lightsail/model/Tag.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 ArnT = Aws::String>
65 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
66 template<
typename ArnT = Aws::String>
78 template<
typename SupportCodeT = Aws::String>
79 void SetSupportCode(SupportCodeT&& value) { m_supportCodeHasBeenSet =
true; m_supportCode = std::forward<SupportCodeT>(value); }
80 template<
typename SupportCodeT = Aws::String>
90 template<
typename CreatedAtT = Aws::Utils::DateTime>
91 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet =
true; m_createdAt = std::forward<CreatedAtT>(value); }
92 template<
typename CreatedAtT = Aws::Utils::DateTime>
102 template<
typename LocationT = ResourceLocation>
103 void SetLocation(LocationT&& value) { m_locationHasBeenSet =
true; m_location = std::forward<LocationT>(value); }
104 template<
typename LocationT = ResourceLocation>
127 template<
typename TagsT = Aws::Vector<Tag>>
128 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
129 template<
typename TagsT = Aws::Vector<Tag>>
131 template<
typename TagsT = Tag>
132 DiskSnapshot&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
141 inline void SetSizeInGb(
int value) { m_sizeInGbHasBeenSet =
true; m_sizeInGb = value; }
161 template<
typename ProgressT = Aws::String>
162 void SetProgress(ProgressT&& value) { m_progressHasBeenSet =
true; m_progress = std::forward<ProgressT>(value); }
163 template<
typename ProgressT = Aws::String>
174 template<
typename FromDiskNameT = Aws::String>
175 void SetFromDiskName(FromDiskNameT&& value) { m_fromDiskNameHasBeenSet =
true; m_fromDiskName = std::forward<FromDiskNameT>(value); }
176 template<
typename FromDiskNameT = Aws::String>
187 template<
typename FromDiskArnT = Aws::String>
188 void SetFromDiskArn(FromDiskArnT&& value) { m_fromDiskArnHasBeenSet =
true; m_fromDiskArn = std::forward<FromDiskArnT>(value); }
189 template<
typename FromDiskArnT = Aws::String>
200 template<
typename FromInstanceNameT = Aws::String>
201 void SetFromInstanceName(FromInstanceNameT&& value) { m_fromInstanceNameHasBeenSet =
true; m_fromInstanceName = std::forward<FromInstanceNameT>(value); }
202 template<
typename FromInstanceNameT = Aws::String>
213 template<
typename FromInstanceArnT = Aws::String>
214 void SetFromInstanceArn(FromInstanceArnT&& value) { m_fromInstanceArnHasBeenSet =
true; m_fromInstanceArn = std::forward<FromInstanceArnT>(value); }
215 template<
typename FromInstanceArnT = Aws::String>
226 inline void SetIsFromAutoSnapshot(
bool value) { m_isFromAutoSnapshotHasBeenSet =
true; m_isFromAutoSnapshot = value; }
232 bool m_nameHasBeenSet =
false;
235 bool m_arnHasBeenSet =
false;
238 bool m_supportCodeHasBeenSet =
false;
241 bool m_createdAtHasBeenSet =
false;
243 ResourceLocation m_location;
244 bool m_locationHasBeenSet =
false;
247 bool m_resourceTypeHasBeenSet =
false;
250 bool m_tagsHasBeenSet =
false;
253 bool m_sizeInGbHasBeenSet =
false;
256 bool m_stateHasBeenSet =
false;
259 bool m_progressHasBeenSet =
false;
262 bool m_fromDiskNameHasBeenSet =
false;
265 bool m_fromDiskArnHasBeenSet =
false;
268 bool m_fromInstanceNameHasBeenSet =
false;
271 bool m_fromInstanceArnHasBeenSet =
false;
273 bool m_isFromAutoSnapshot{
false};
274 bool m_isFromAutoSnapshotHasBeenSet =
false;
bool ArnHasBeenSet() const
DiskSnapshot & WithIsFromAutoSnapshot(bool value)
void SetName(NameT &&value)
bool ProgressHasBeenSet() const
DiskSnapshot & WithProgress(ProgressT &&value)
const Aws::String & GetProgress() const
void SetSizeInGb(int value)
DiskSnapshot & WithSupportCode(SupportCodeT &&value)
bool FromDiskArnHasBeenSet() const
DiskSnapshot & WithLocation(LocationT &&value)
DiskSnapshot & WithCreatedAt(CreatedAtT &&value)
const Aws::String & GetFromDiskName() const
void SetProgress(ProgressT &&value)
void SetSupportCode(SupportCodeT &&value)
bool GetIsFromAutoSnapshot() const
bool StateHasBeenSet() const
void SetLocation(LocationT &&value)
void SetFromDiskName(FromDiskNameT &&value)
bool CreatedAtHasBeenSet() const
bool FromDiskNameHasBeenSet() const
const Aws::String & GetFromInstanceArn() const
void SetResourceType(ResourceType value)
DiskSnapshot & WithResourceType(ResourceType value)
bool IsFromAutoSnapshotHasBeenSet() const
DiskSnapshot & WithFromDiskArn(FromDiskArnT &&value)
AWS_LIGHTSAIL_API DiskSnapshot & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetIsFromAutoSnapshot(bool value)
DiskSnapshot & WithState(DiskSnapshotState value)
DiskSnapshot & WithFromInstanceName(FromInstanceNameT &&value)
const Aws::String & GetSupportCode() const
void SetTags(TagsT &&value)
const Aws::String & GetFromInstanceName() const
const Aws::String & GetFromDiskArn() const
void SetState(DiskSnapshotState value)
bool ResourceTypeHasBeenSet() const
void SetCreatedAt(CreatedAtT &&value)
bool SupportCodeHasBeenSet() const
DiskSnapshot & WithFromInstanceArn(FromInstanceArnT &&value)
void SetFromInstanceName(FromInstanceNameT &&value)
DiskSnapshot & WithFromDiskName(FromDiskNameT &&value)
void SetArn(ArnT &&value)
bool FromInstanceNameHasBeenSet() const
bool NameHasBeenSet() const
DiskSnapshot & WithName(NameT &&value)
const Aws::Vector< Tag > & GetTags() const
AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const
DiskSnapshot & WithSizeInGb(int value)
bool TagsHasBeenSet() const
bool FromInstanceArnHasBeenSet() const
bool SizeInGbHasBeenSet() const
const Aws::String & GetArn() const
void SetFromDiskArn(FromDiskArnT &&value)
ResourceType GetResourceType() const
AWS_LIGHTSAIL_API DiskSnapshot()=default
void SetFromInstanceArn(FromInstanceArnT &&value)
DiskSnapshot & AddTags(TagsT &&value)
const ResourceLocation & GetLocation() const
AWS_LIGHTSAIL_API DiskSnapshot(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetName() const
DiskSnapshot & WithTags(TagsT &&value)
DiskSnapshotState GetState() const
DiskSnapshot & WithArn(ArnT &&value)
bool LocationHasBeenSet() const
const Aws::Utils::DateTime & GetCreatedAt() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue