AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Snapshot.h
1
6#pragma once
7#include <aws/fsx/FSx_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/fsx/model/SnapshotLifecycle.h>
11#include <aws/fsx/model/LifecycleTransitionReason.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/fsx/model/AdministrativeAction.h>
14#include <aws/fsx/model/Tag.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace FSx
28{
29namespace Model
30{
31 class AdministrativeAction;
32
39 {
40 public:
41 AWS_FSX_API Snapshot() = default;
42 AWS_FSX_API Snapshot(Aws::Utils::Json::JsonView jsonValue);
45
46
48
49 inline const Aws::String& GetResourceARN() const { return m_resourceARN; }
50 inline bool ResourceARNHasBeenSet() const { return m_resourceARNHasBeenSet; }
51 template<typename ResourceARNT = Aws::String>
52 void SetResourceARN(ResourceARNT&& value) { m_resourceARNHasBeenSet = true; m_resourceARN = std::forward<ResourceARNT>(value); }
53 template<typename ResourceARNT = Aws::String>
54 Snapshot& WithResourceARN(ResourceARNT&& value) { SetResourceARN(std::forward<ResourceARNT>(value)); return *this;}
56
58
61 inline const Aws::String& GetSnapshotId() const { return m_snapshotId; }
62 inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
63 template<typename SnapshotIdT = Aws::String>
64 void SetSnapshotId(SnapshotIdT&& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = std::forward<SnapshotIdT>(value); }
65 template<typename SnapshotIdT = Aws::String>
66 Snapshot& WithSnapshotId(SnapshotIdT&& value) { SetSnapshotId(std::forward<SnapshotIdT>(value)); return *this;}
68
70
73 inline const Aws::String& GetName() const { return m_name; }
74 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
75 template<typename NameT = Aws::String>
76 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
77 template<typename NameT = Aws::String>
78 Snapshot& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
80
82
85 inline const Aws::String& GetVolumeId() const { return m_volumeId; }
86 inline bool VolumeIdHasBeenSet() const { return m_volumeIdHasBeenSet; }
87 template<typename VolumeIdT = Aws::String>
88 void SetVolumeId(VolumeIdT&& value) { m_volumeIdHasBeenSet = true; m_volumeId = std::forward<VolumeIdT>(value); }
89 template<typename VolumeIdT = Aws::String>
90 Snapshot& WithVolumeId(VolumeIdT&& value) { SetVolumeId(std::forward<VolumeIdT>(value)); return *this;}
92
94
95 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
96 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
97 template<typename CreationTimeT = Aws::Utils::DateTime>
98 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::forward<CreationTimeT>(value); }
99 template<typename CreationTimeT = Aws::Utils::DateTime>
100 Snapshot& WithCreationTime(CreationTimeT&& value) { SetCreationTime(std::forward<CreationTimeT>(value)); return *this;}
102
104
111 inline SnapshotLifecycle GetLifecycle() const { return m_lifecycle; }
112 inline bool LifecycleHasBeenSet() const { return m_lifecycleHasBeenSet; }
113 inline void SetLifecycle(SnapshotLifecycle value) { m_lifecycleHasBeenSet = true; m_lifecycle = value; }
114 inline Snapshot& WithLifecycle(SnapshotLifecycle value) { SetLifecycle(value); return *this;}
116
118
119 inline const LifecycleTransitionReason& GetLifecycleTransitionReason() const { return m_lifecycleTransitionReason; }
120 inline bool LifecycleTransitionReasonHasBeenSet() const { return m_lifecycleTransitionReasonHasBeenSet; }
121 template<typename LifecycleTransitionReasonT = LifecycleTransitionReason>
122 void SetLifecycleTransitionReason(LifecycleTransitionReasonT&& value) { m_lifecycleTransitionReasonHasBeenSet = true; m_lifecycleTransitionReason = std::forward<LifecycleTransitionReasonT>(value); }
123 template<typename LifecycleTransitionReasonT = LifecycleTransitionReason>
124 Snapshot& WithLifecycleTransitionReason(LifecycleTransitionReasonT&& value) { SetLifecycleTransitionReason(std::forward<LifecycleTransitionReasonT>(value)); return *this;}
126
128
129 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
130 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
131 template<typename TagsT = Aws::Vector<Tag>>
132 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
133 template<typename TagsT = Aws::Vector<Tag>>
134 Snapshot& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
135 template<typename TagsT = Tag>
136 Snapshot& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
138
140
145 inline const Aws::Vector<AdministrativeAction>& GetAdministrativeActions() const { return m_administrativeActions; }
146 inline bool AdministrativeActionsHasBeenSet() const { return m_administrativeActionsHasBeenSet; }
147 template<typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
148 void SetAdministrativeActions(AdministrativeActionsT&& value) { m_administrativeActionsHasBeenSet = true; m_administrativeActions = std::forward<AdministrativeActionsT>(value); }
149 template<typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
150 Snapshot& WithAdministrativeActions(AdministrativeActionsT&& value) { SetAdministrativeActions(std::forward<AdministrativeActionsT>(value)); return *this;}
151 template<typename AdministrativeActionsT = AdministrativeAction>
152 Snapshot& AddAdministrativeActions(AdministrativeActionsT&& value) { m_administrativeActionsHasBeenSet = true; m_administrativeActions.emplace_back(std::forward<AdministrativeActionsT>(value)); return *this; }
154 private:
155
156 Aws::String m_resourceARN;
157 bool m_resourceARNHasBeenSet = false;
158
159 Aws::String m_snapshotId;
160 bool m_snapshotIdHasBeenSet = false;
161
162 Aws::String m_name;
163 bool m_nameHasBeenSet = false;
164
165 Aws::String m_volumeId;
166 bool m_volumeIdHasBeenSet = false;
167
168 Aws::Utils::DateTime m_creationTime{};
169 bool m_creationTimeHasBeenSet = false;
170
172 bool m_lifecycleHasBeenSet = false;
173
174 LifecycleTransitionReason m_lifecycleTransitionReason;
175 bool m_lifecycleTransitionReasonHasBeenSet = false;
176
177 Aws::Vector<Tag> m_tags;
178 bool m_tagsHasBeenSet = false;
179
180 Aws::Vector<AdministrativeAction> m_administrativeActions;
181 bool m_administrativeActionsHasBeenSet = false;
182 };
183
184} // namespace Model
185} // namespace FSx
186} // namespace Aws
void SetLifecycle(SnapshotLifecycle value)
Definition Snapshot.h:113
const Aws::String & GetName() const
Definition Snapshot.h:73
bool TagsHasBeenSet() const
Definition Snapshot.h:130
AWS_FSX_API Snapshot(Aws::Utils::Json::JsonView jsonValue)
void SetSnapshotId(SnapshotIdT &&value)
Definition Snapshot.h:64
void SetCreationTime(CreationTimeT &&value)
Definition Snapshot.h:98
const Aws::Utils::DateTime & GetCreationTime() const
Definition Snapshot.h:95
const LifecycleTransitionReason & GetLifecycleTransitionReason() const
Definition Snapshot.h:119
void SetName(NameT &&value)
Definition Snapshot.h:76
const Aws::Vector< AdministrativeAction > & GetAdministrativeActions() const
Definition Snapshot.h:145
Snapshot & WithSnapshotId(SnapshotIdT &&value)
Definition Snapshot.h:66
bool AdministrativeActionsHasBeenSet() const
Definition Snapshot.h:146
void SetLifecycleTransitionReason(LifecycleTransitionReasonT &&value)
Definition Snapshot.h:122
bool SnapshotIdHasBeenSet() const
Definition Snapshot.h:62
void SetTags(TagsT &&value)
Definition Snapshot.h:132
Snapshot & AddTags(TagsT &&value)
Definition Snapshot.h:136
Snapshot & WithTags(TagsT &&value)
Definition Snapshot.h:134
Snapshot & WithName(NameT &&value)
Definition Snapshot.h:78
Snapshot & WithVolumeId(VolumeIdT &&value)
Definition Snapshot.h:90
Snapshot & WithLifecycle(SnapshotLifecycle value)
Definition Snapshot.h:114
SnapshotLifecycle GetLifecycle() const
Definition Snapshot.h:111
bool LifecycleHasBeenSet() const
Definition Snapshot.h:112
Snapshot & WithLifecycleTransitionReason(LifecycleTransitionReasonT &&value)
Definition Snapshot.h:124
bool VolumeIdHasBeenSet() const
Definition Snapshot.h:86
void SetResourceARN(ResourceARNT &&value)
Definition Snapshot.h:52
AWS_FSX_API Snapshot()=default
AWS_FSX_API Snapshot & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetResourceARN() const
Definition Snapshot.h:49
Snapshot & WithCreationTime(CreationTimeT &&value)
Definition Snapshot.h:100
bool LifecycleTransitionReasonHasBeenSet() const
Definition Snapshot.h:120
bool CreationTimeHasBeenSet() const
Definition Snapshot.h:96
bool ResourceARNHasBeenSet() const
Definition Snapshot.h:50
const Aws::String & GetVolumeId() const
Definition Snapshot.h:85
void SetAdministrativeActions(AdministrativeActionsT &&value)
Definition Snapshot.h:148
bool NameHasBeenSet() const
Definition Snapshot.h:74
AWS_FSX_API Aws::Utils::Json::JsonValue Jsonize() const
Snapshot & AddAdministrativeActions(AdministrativeActionsT &&value)
Definition Snapshot.h:152
const Aws::String & GetSnapshotId() const
Definition Snapshot.h:61
const Aws::Vector< Tag > & GetTags() const
Definition Snapshot.h:129
Snapshot & WithAdministrativeActions(AdministrativeActionsT &&value)
Definition Snapshot.h:150
void SetVolumeId(VolumeIdT &&value)
Definition Snapshot.h:88
Snapshot & WithResourceARN(ResourceARNT &&value)
Definition Snapshot.h:54
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue