AWS SDK for C++

AWS SDK for C++ Version 1.11.754

Loading...
Searching...
No Matches
Snapshot.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ds/DirectoryService_EXPORTS.h>
10#include <aws/ds/model/SnapshotStatus.h>
11#include <aws/ds/model/SnapshotType.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace DirectoryService {
23namespace Model {
24
30class Snapshot {
31 public:
32 AWS_DIRECTORYSERVICE_API Snapshot() = default;
33 AWS_DIRECTORYSERVICE_API Snapshot(Aws::Utils::Json::JsonView jsonValue);
34 AWS_DIRECTORYSERVICE_API Snapshot& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_DIRECTORYSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetDirectoryId() const { return m_directoryId; }
42 inline bool DirectoryIdHasBeenSet() const { return m_directoryIdHasBeenSet; }
43 template <typename DirectoryIdT = Aws::String>
44 void SetDirectoryId(DirectoryIdT&& value) {
45 m_directoryIdHasBeenSet = true;
46 m_directoryId = std::forward<DirectoryIdT>(value);
47 }
48 template <typename DirectoryIdT = Aws::String>
49 Snapshot& WithDirectoryId(DirectoryIdT&& value) {
50 SetDirectoryId(std::forward<DirectoryIdT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetSnapshotId() const { return m_snapshotId; }
60 inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
61 template <typename SnapshotIdT = Aws::String>
62 void SetSnapshotId(SnapshotIdT&& value) {
63 m_snapshotIdHasBeenSet = true;
64 m_snapshotId = std::forward<SnapshotIdT>(value);
65 }
66 template <typename SnapshotIdT = Aws::String>
67 Snapshot& WithSnapshotId(SnapshotIdT&& value) {
68 SetSnapshotId(std::forward<SnapshotIdT>(value));
69 return *this;
70 }
72
74
77 inline SnapshotType GetType() const { return m_type; }
78 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
79 inline void SetType(SnapshotType value) {
80 m_typeHasBeenSet = true;
81 m_type = value;
82 }
84 SetType(value);
85 return *this;
86 }
88
90
93 inline const Aws::String& GetName() const { return m_name; }
94 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
95 template <typename NameT = Aws::String>
96 void SetName(NameT&& value) {
97 m_nameHasBeenSet = true;
98 m_name = std::forward<NameT>(value);
99 }
100 template <typename NameT = Aws::String>
101 Snapshot& WithName(NameT&& value) {
102 SetName(std::forward<NameT>(value));
103 return *this;
104 }
106
108
111 inline SnapshotStatus GetStatus() const { return m_status; }
112 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
113 inline void SetStatus(SnapshotStatus value) {
114 m_statusHasBeenSet = true;
115 m_status = value;
116 }
118 SetStatus(value);
119 return *this;
120 }
122
124
127 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
128 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
129 template <typename StartTimeT = Aws::Utils::DateTime>
130 void SetStartTime(StartTimeT&& value) {
131 m_startTimeHasBeenSet = true;
132 m_startTime = std::forward<StartTimeT>(value);
133 }
134 template <typename StartTimeT = Aws::Utils::DateTime>
135 Snapshot& WithStartTime(StartTimeT&& value) {
136 SetStartTime(std::forward<StartTimeT>(value));
137 return *this;
138 }
140 private:
141 Aws::String m_directoryId;
142
143 Aws::String m_snapshotId;
144
146
147 Aws::String m_name;
148
150
151 Aws::Utils::DateTime m_startTime{};
152 bool m_directoryIdHasBeenSet = false;
153 bool m_snapshotIdHasBeenSet = false;
154 bool m_typeHasBeenSet = false;
155 bool m_nameHasBeenSet = false;
156 bool m_statusHasBeenSet = false;
157 bool m_startTimeHasBeenSet = false;
158};
159
160} // namespace Model
161} // namespace DirectoryService
162} // namespace Aws
Snapshot & WithSnapshotId(SnapshotIdT &&value)
Definition Snapshot.h:67
void SetType(SnapshotType value)
Definition Snapshot.h:79
Snapshot & WithType(SnapshotType value)
Definition Snapshot.h:83
void SetSnapshotId(SnapshotIdT &&value)
Definition Snapshot.h:62
const Aws::Utils::DateTime & GetStartTime() const
Definition Snapshot.h:127
const Aws::String & GetName() const
Definition Snapshot.h:93
void SetStartTime(StartTimeT &&value)
Definition Snapshot.h:130
const Aws::String & GetSnapshotId() const
Definition Snapshot.h:59
Snapshot & WithName(NameT &&value)
Definition Snapshot.h:101
AWS_DIRECTORYSERVICE_API Snapshot & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_DIRECTORYSERVICE_API Snapshot()=default
Snapshot & WithStatus(SnapshotStatus value)
Definition Snapshot.h:117
void SetDirectoryId(DirectoryIdT &&value)
Definition Snapshot.h:44
SnapshotStatus GetStatus() const
Definition Snapshot.h:111
AWS_DIRECTORYSERVICE_API Snapshot(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetDirectoryId() const
Definition Snapshot.h:41
AWS_DIRECTORYSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
Snapshot & WithDirectoryId(DirectoryIdT &&value)
Definition Snapshot.h:49
void SetStatus(SnapshotStatus value)
Definition Snapshot.h:113
Snapshot & WithStartTime(StartTimeT &&value)
Definition Snapshot.h:135
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue