7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/fsx/FSx_EXPORTS.h>
11#include <aws/fsx/model/AdministrativeAction.h>
12#include <aws/fsx/model/LifecycleTransitionReason.h>
13#include <aws/fsx/model/SnapshotLifecycle.h>
14#include <aws/fsx/model/Tag.h>
27class AdministrativeAction;
45 template <
typename ResourceARNT = Aws::String>
47 m_resourceARNHasBeenSet =
true;
48 m_resourceARN = std::forward<ResourceARNT>(value);
50 template <
typename ResourceARNT = Aws::String>
63 template <
typename SnapshotIdT = Aws::String>
65 m_snapshotIdHasBeenSet =
true;
66 m_snapshotId = std::forward<SnapshotIdT>(value);
68 template <
typename SnapshotIdT = Aws::String>
81 template <
typename NameT = Aws::String>
83 m_nameHasBeenSet =
true;
84 m_name = std::forward<NameT>(value);
86 template <
typename NameT = Aws::String>
88 SetName(std::forward<NameT>(value));
99 template <
typename VolumeIdT = Aws::String>
101 m_volumeIdHasBeenSet =
true;
102 m_volumeId = std::forward<VolumeIdT>(value);
104 template <
typename VolumeIdT = Aws::String>
115 template <
typename CreationTimeT = Aws::Utils::DateTime>
117 m_creationTimeHasBeenSet =
true;
118 m_creationTime = std::forward<CreationTimeT>(value);
120 template <
typename CreationTimeT = Aws::Utils::DateTime>
138 m_lifecycleHasBeenSet =
true;
151 template <
typename LifecycleTransitionReasonT = LifecycleTransitionReason>
153 m_lifecycleTransitionReasonHasBeenSet =
true;
154 m_lifecycleTransitionReason = std::forward<LifecycleTransitionReasonT>(value);
156 template <
typename LifecycleTransitionReasonT = LifecycleTransitionReason>
167 template <
typename TagsT = Aws::Vector<Tag>>
169 m_tagsHasBeenSet =
true;
170 m_tags = std::forward<TagsT>(value);
172 template <
typename TagsT = Aws::Vector<Tag>>
174 SetTags(std::forward<TagsT>(value));
177 template <
typename TagsT = Tag>
179 m_tagsHasBeenSet =
true;
180 m_tags.emplace_back(std::forward<TagsT>(value));
193 template <
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
195 m_administrativeActionsHasBeenSet =
true;
196 m_administrativeActions = std::forward<AdministrativeActionsT>(value);
198 template <
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
203 template <
typename AdministrativeActionsT = AdministrativeAction>
205 m_administrativeActionsHasBeenSet =
true;
206 m_administrativeActions.emplace_back(std::forward<AdministrativeActionsT>(value));
223 LifecycleTransitionReason m_lifecycleTransitionReason;
228 bool m_resourceARNHasBeenSet =
false;
229 bool m_snapshotIdHasBeenSet =
false;
230 bool m_nameHasBeenSet =
false;
231 bool m_volumeIdHasBeenSet =
false;
232 bool m_creationTimeHasBeenSet =
false;
233 bool m_lifecycleHasBeenSet =
false;
234 bool m_lifecycleTransitionReasonHasBeenSet =
false;
235 bool m_tagsHasBeenSet =
false;
236 bool m_administrativeActionsHasBeenSet =
false;
void SetLifecycle(SnapshotLifecycle value)
const Aws::String & GetName() const
bool TagsHasBeenSet() const
AWS_FSX_API Snapshot(Aws::Utils::Json::JsonView jsonValue)
void SetSnapshotId(SnapshotIdT &&value)
void SetCreationTime(CreationTimeT &&value)
const Aws::Utils::DateTime & GetCreationTime() const
const LifecycleTransitionReason & GetLifecycleTransitionReason() const
void SetName(NameT &&value)
const Aws::Vector< AdministrativeAction > & GetAdministrativeActions() const
Snapshot & WithSnapshotId(SnapshotIdT &&value)
bool AdministrativeActionsHasBeenSet() const
void SetLifecycleTransitionReason(LifecycleTransitionReasonT &&value)
bool SnapshotIdHasBeenSet() const
void SetTags(TagsT &&value)
Snapshot & AddTags(TagsT &&value)
Snapshot & WithTags(TagsT &&value)
Snapshot & WithName(NameT &&value)
Snapshot & WithVolumeId(VolumeIdT &&value)
Snapshot & WithLifecycle(SnapshotLifecycle value)
SnapshotLifecycle GetLifecycle() const
bool LifecycleHasBeenSet() const
Snapshot & WithLifecycleTransitionReason(LifecycleTransitionReasonT &&value)
bool VolumeIdHasBeenSet() const
void SetResourceARN(ResourceARNT &&value)
AWS_FSX_API Snapshot()=default
AWS_FSX_API Snapshot & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetResourceARN() const
Snapshot & WithCreationTime(CreationTimeT &&value)
bool LifecycleTransitionReasonHasBeenSet() const
bool CreationTimeHasBeenSet() const
bool ResourceARNHasBeenSet() const
const Aws::String & GetVolumeId() const
void SetAdministrativeActions(AdministrativeActionsT &&value)
bool NameHasBeenSet() const
AWS_FSX_API Aws::Utils::Json::JsonValue Jsonize() const
Snapshot & AddAdministrativeActions(AdministrativeActionsT &&value)
const Aws::String & GetSnapshotId() const
const Aws::Vector< Tag > & GetTags() const
Snapshot & WithAdministrativeActions(AdministrativeActionsT &&value)
void SetVolumeId(VolumeIdT &&value)
Snapshot & WithResourceARN(ResourceARNT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue