AWS SDK for C++

AWS SDK for C++ Version 1.11.741

Loading...
Searching...
No Matches
RecoveryInstance.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/drs/Drs_EXPORTS.h>
10#include <aws/drs/model/EC2InstanceState.h>
11#include <aws/drs/model/OriginEnvironment.h>
12#include <aws/drs/model/RecoveryInstanceDataReplicationInfo.h>
13#include <aws/drs/model/RecoveryInstanceFailback.h>
14#include <aws/drs/model/RecoveryInstanceProperties.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace drs {
26namespace Model {
27
35 public:
36 AWS_DRS_API RecoveryInstance() = default;
40
42
45 inline const Aws::String& GetAgentVersion() const { return m_agentVersion; }
46 inline bool AgentVersionHasBeenSet() const { return m_agentVersionHasBeenSet; }
47 template <typename AgentVersionT = Aws::String>
48 void SetAgentVersion(AgentVersionT&& value) {
49 m_agentVersionHasBeenSet = true;
50 m_agentVersion = std::forward<AgentVersionT>(value);
51 }
52 template <typename AgentVersionT = Aws::String>
53 RecoveryInstance& WithAgentVersion(AgentVersionT&& value) {
54 SetAgentVersion(std::forward<AgentVersionT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::String& GetArn() const { return m_arn; }
64 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
65 template <typename ArnT = Aws::String>
66 void SetArn(ArnT&& value) {
67 m_arnHasBeenSet = true;
68 m_arn = std::forward<ArnT>(value);
69 }
70 template <typename ArnT = Aws::String>
71 RecoveryInstance& WithArn(ArnT&& value) {
72 SetArn(std::forward<ArnT>(value));
73 return *this;
74 }
76
78
81 inline const RecoveryInstanceDataReplicationInfo& GetDataReplicationInfo() const { return m_dataReplicationInfo; }
82 inline bool DataReplicationInfoHasBeenSet() const { return m_dataReplicationInfoHasBeenSet; }
83 template <typename DataReplicationInfoT = RecoveryInstanceDataReplicationInfo>
84 void SetDataReplicationInfo(DataReplicationInfoT&& value) {
85 m_dataReplicationInfoHasBeenSet = true;
86 m_dataReplicationInfo = std::forward<DataReplicationInfoT>(value);
87 }
88 template <typename DataReplicationInfoT = RecoveryInstanceDataReplicationInfo>
89 RecoveryInstance& WithDataReplicationInfo(DataReplicationInfoT&& value) {
90 SetDataReplicationInfo(std::forward<DataReplicationInfoT>(value));
91 return *this;
92 }
94
96
99 inline const Aws::String& GetEc2InstanceID() const { return m_ec2InstanceID; }
100 inline bool Ec2InstanceIDHasBeenSet() const { return m_ec2InstanceIDHasBeenSet; }
101 template <typename Ec2InstanceIDT = Aws::String>
102 void SetEc2InstanceID(Ec2InstanceIDT&& value) {
103 m_ec2InstanceIDHasBeenSet = true;
104 m_ec2InstanceID = std::forward<Ec2InstanceIDT>(value);
105 }
106 template <typename Ec2InstanceIDT = Aws::String>
107 RecoveryInstance& WithEc2InstanceID(Ec2InstanceIDT&& value) {
108 SetEc2InstanceID(std::forward<Ec2InstanceIDT>(value));
109 return *this;
110 }
112
114
117 inline EC2InstanceState GetEc2InstanceState() const { return m_ec2InstanceState; }
118 inline bool Ec2InstanceStateHasBeenSet() const { return m_ec2InstanceStateHasBeenSet; }
120 m_ec2InstanceStateHasBeenSet = true;
121 m_ec2InstanceState = value;
122 }
124 SetEc2InstanceState(value);
125 return *this;
126 }
128
130
134 inline const RecoveryInstanceFailback& GetFailback() const { return m_failback; }
135 inline bool FailbackHasBeenSet() const { return m_failbackHasBeenSet; }
136 template <typename FailbackT = RecoveryInstanceFailback>
137 void SetFailback(FailbackT&& value) {
138 m_failbackHasBeenSet = true;
139 m_failback = std::forward<FailbackT>(value);
140 }
141 template <typename FailbackT = RecoveryInstanceFailback>
142 RecoveryInstance& WithFailback(FailbackT&& value) {
143 SetFailback(std::forward<FailbackT>(value));
144 return *this;
145 }
147
149
153 inline bool GetIsDrill() const { return m_isDrill; }
154 inline bool IsDrillHasBeenSet() const { return m_isDrillHasBeenSet; }
155 inline void SetIsDrill(bool value) {
156 m_isDrillHasBeenSet = true;
157 m_isDrill = value;
158 }
159 inline RecoveryInstance& WithIsDrill(bool value) {
160 SetIsDrill(value);
161 return *this;
162 }
164
166
169 inline const Aws::String& GetJobID() const { return m_jobID; }
170 inline bool JobIDHasBeenSet() const { return m_jobIDHasBeenSet; }
171 template <typename JobIDT = Aws::String>
172 void SetJobID(JobIDT&& value) {
173 m_jobIDHasBeenSet = true;
174 m_jobID = std::forward<JobIDT>(value);
175 }
176 template <typename JobIDT = Aws::String>
177 RecoveryInstance& WithJobID(JobIDT&& value) {
178 SetJobID(std::forward<JobIDT>(value));
179 return *this;
180 }
182
184
187 inline const Aws::String& GetOriginAvailabilityZone() const { return m_originAvailabilityZone; }
188 inline bool OriginAvailabilityZoneHasBeenSet() const { return m_originAvailabilityZoneHasBeenSet; }
189 template <typename OriginAvailabilityZoneT = Aws::String>
190 void SetOriginAvailabilityZone(OriginAvailabilityZoneT&& value) {
191 m_originAvailabilityZoneHasBeenSet = true;
192 m_originAvailabilityZone = std::forward<OriginAvailabilityZoneT>(value);
193 }
194 template <typename OriginAvailabilityZoneT = Aws::String>
195 RecoveryInstance& WithOriginAvailabilityZone(OriginAvailabilityZoneT&& value) {
196 SetOriginAvailabilityZone(std::forward<OriginAvailabilityZoneT>(value));
197 return *this;
198 }
200
202
206 inline OriginEnvironment GetOriginEnvironment() const { return m_originEnvironment; }
207 inline bool OriginEnvironmentHasBeenSet() const { return m_originEnvironmentHasBeenSet; }
209 m_originEnvironmentHasBeenSet = true;
210 m_originEnvironment = value;
211 }
214 return *this;
215 }
217
219
223 inline const Aws::String& GetPointInTimeSnapshotDateTime() const { return m_pointInTimeSnapshotDateTime; }
224 inline bool PointInTimeSnapshotDateTimeHasBeenSet() const { return m_pointInTimeSnapshotDateTimeHasBeenSet; }
225 template <typename PointInTimeSnapshotDateTimeT = Aws::String>
226 void SetPointInTimeSnapshotDateTime(PointInTimeSnapshotDateTimeT&& value) {
227 m_pointInTimeSnapshotDateTimeHasBeenSet = true;
228 m_pointInTimeSnapshotDateTime = std::forward<PointInTimeSnapshotDateTimeT>(value);
229 }
230 template <typename PointInTimeSnapshotDateTimeT = Aws::String>
231 RecoveryInstance& WithPointInTimeSnapshotDateTime(PointInTimeSnapshotDateTimeT&& value) {
232 SetPointInTimeSnapshotDateTime(std::forward<PointInTimeSnapshotDateTimeT>(value));
233 return *this;
234 }
236
238
241 inline const Aws::String& GetRecoveryInstanceID() const { return m_recoveryInstanceID; }
242 inline bool RecoveryInstanceIDHasBeenSet() const { return m_recoveryInstanceIDHasBeenSet; }
243 template <typename RecoveryInstanceIDT = Aws::String>
244 void SetRecoveryInstanceID(RecoveryInstanceIDT&& value) {
245 m_recoveryInstanceIDHasBeenSet = true;
246 m_recoveryInstanceID = std::forward<RecoveryInstanceIDT>(value);
247 }
248 template <typename RecoveryInstanceIDT = Aws::String>
249 RecoveryInstance& WithRecoveryInstanceID(RecoveryInstanceIDT&& value) {
250 SetRecoveryInstanceID(std::forward<RecoveryInstanceIDT>(value));
251 return *this;
252 }
254
256
259 inline const RecoveryInstanceProperties& GetRecoveryInstanceProperties() const { return m_recoveryInstanceProperties; }
260 inline bool RecoveryInstancePropertiesHasBeenSet() const { return m_recoveryInstancePropertiesHasBeenSet; }
261 template <typename RecoveryInstancePropertiesT = RecoveryInstanceProperties>
262 void SetRecoveryInstanceProperties(RecoveryInstancePropertiesT&& value) {
263 m_recoveryInstancePropertiesHasBeenSet = true;
264 m_recoveryInstanceProperties = std::forward<RecoveryInstancePropertiesT>(value);
265 }
266 template <typename RecoveryInstancePropertiesT = RecoveryInstanceProperties>
267 RecoveryInstance& WithRecoveryInstanceProperties(RecoveryInstancePropertiesT&& value) {
268 SetRecoveryInstanceProperties(std::forward<RecoveryInstancePropertiesT>(value));
269 return *this;
270 }
272
274
277 inline const Aws::String& GetSourceOutpostArn() const { return m_sourceOutpostArn; }
278 inline bool SourceOutpostArnHasBeenSet() const { return m_sourceOutpostArnHasBeenSet; }
279 template <typename SourceOutpostArnT = Aws::String>
280 void SetSourceOutpostArn(SourceOutpostArnT&& value) {
281 m_sourceOutpostArnHasBeenSet = true;
282 m_sourceOutpostArn = std::forward<SourceOutpostArnT>(value);
283 }
284 template <typename SourceOutpostArnT = Aws::String>
285 RecoveryInstance& WithSourceOutpostArn(SourceOutpostArnT&& value) {
286 SetSourceOutpostArn(std::forward<SourceOutpostArnT>(value));
287 return *this;
288 }
290
292
295 inline const Aws::String& GetSourceServerID() const { return m_sourceServerID; }
296 inline bool SourceServerIDHasBeenSet() const { return m_sourceServerIDHasBeenSet; }
297 template <typename SourceServerIDT = Aws::String>
298 void SetSourceServerID(SourceServerIDT&& value) {
299 m_sourceServerIDHasBeenSet = true;
300 m_sourceServerID = std::forward<SourceServerIDT>(value);
301 }
302 template <typename SourceServerIDT = Aws::String>
303 RecoveryInstance& WithSourceServerID(SourceServerIDT&& value) {
304 SetSourceServerID(std::forward<SourceServerIDT>(value));
305 return *this;
306 }
308
310
313 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
314 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
315 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
316 void SetTags(TagsT&& value) {
317 m_tagsHasBeenSet = true;
318 m_tags = std::forward<TagsT>(value);
319 }
320 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
321 RecoveryInstance& WithTags(TagsT&& value) {
322 SetTags(std::forward<TagsT>(value));
323 return *this;
324 }
325 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
326 RecoveryInstance& AddTags(TagsKeyT&& key, TagsValueT&& value) {
327 m_tagsHasBeenSet = true;
328 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
329 return *this;
330 }
332 private:
333 Aws::String m_agentVersion;
334
335 Aws::String m_arn;
336
337 RecoveryInstanceDataReplicationInfo m_dataReplicationInfo;
338
339 Aws::String m_ec2InstanceID;
340
342
343 RecoveryInstanceFailback m_failback;
344
345 bool m_isDrill{false};
346
347 Aws::String m_jobID;
348
349 Aws::String m_originAvailabilityZone;
350
352
353 Aws::String m_pointInTimeSnapshotDateTime;
354
355 Aws::String m_recoveryInstanceID;
356
357 RecoveryInstanceProperties m_recoveryInstanceProperties;
358
359 Aws::String m_sourceOutpostArn;
360
361 Aws::String m_sourceServerID;
362
364 bool m_agentVersionHasBeenSet = false;
365 bool m_arnHasBeenSet = false;
366 bool m_dataReplicationInfoHasBeenSet = false;
367 bool m_ec2InstanceIDHasBeenSet = false;
368 bool m_ec2InstanceStateHasBeenSet = false;
369 bool m_failbackHasBeenSet = false;
370 bool m_isDrillHasBeenSet = false;
371 bool m_jobIDHasBeenSet = false;
372 bool m_originAvailabilityZoneHasBeenSet = false;
373 bool m_originEnvironmentHasBeenSet = false;
374 bool m_pointInTimeSnapshotDateTimeHasBeenSet = false;
375 bool m_recoveryInstanceIDHasBeenSet = false;
376 bool m_recoveryInstancePropertiesHasBeenSet = false;
377 bool m_sourceOutpostArnHasBeenSet = false;
378 bool m_sourceServerIDHasBeenSet = false;
379 bool m_tagsHasBeenSet = false;
380};
381
382} // namespace Model
383} // namespace drs
384} // namespace Aws
RecoveryInstance & WithRecoveryInstanceID(RecoveryInstanceIDT &&value)
RecoveryInstance & WithEc2InstanceID(Ec2InstanceIDT &&value)
RecoveryInstance & WithRecoveryInstanceProperties(RecoveryInstancePropertiesT &&value)
RecoveryInstance & WithTags(TagsT &&value)
const Aws::String & GetSourceOutpostArn() const
RecoveryInstance & WithDataReplicationInfo(DataReplicationInfoT &&value)
const RecoveryInstanceDataReplicationInfo & GetDataReplicationInfo() const
RecoveryInstance & WithSourceOutpostArn(SourceOutpostArnT &&value)
const Aws::String & GetJobID() const
const Aws::String & GetArn() const
AWS_DRS_API RecoveryInstance & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetDataReplicationInfo(DataReplicationInfoT &&value)
const RecoveryInstanceFailback & GetFailback() const
RecoveryInstance & WithJobID(JobIDT &&value)
const Aws::String & GetAgentVersion() const
AWS_DRS_API RecoveryInstance()=default
void SetRecoveryInstanceProperties(RecoveryInstancePropertiesT &&value)
RecoveryInstance & WithAgentVersion(AgentVersionT &&value)
EC2InstanceState GetEc2InstanceState() const
void SetSourceOutpostArn(SourceOutpostArnT &&value)
RecoveryInstance & AddTags(TagsKeyT &&key, TagsValueT &&value)
const RecoveryInstanceProperties & GetRecoveryInstanceProperties() const
RecoveryInstance & WithSourceServerID(SourceServerIDT &&value)
void SetSourceServerID(SourceServerIDT &&value)
void SetOriginEnvironment(OriginEnvironment value)
OriginEnvironment GetOriginEnvironment() const
AWS_DRS_API RecoveryInstance(Aws::Utils::Json::JsonView jsonValue)
void SetFailback(FailbackT &&value)
const Aws::String & GetRecoveryInstanceID() const
RecoveryInstance & WithPointInTimeSnapshotDateTime(PointInTimeSnapshotDateTimeT &&value)
void SetEc2InstanceState(EC2InstanceState value)
void SetRecoveryInstanceID(RecoveryInstanceIDT &&value)
void SetPointInTimeSnapshotDateTime(PointInTimeSnapshotDateTimeT &&value)
AWS_DRS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
RecoveryInstance & WithIsDrill(bool value)
void SetEc2InstanceID(Ec2InstanceIDT &&value)
void SetOriginAvailabilityZone(OriginAvailabilityZoneT &&value)
RecoveryInstance & WithOriginEnvironment(OriginEnvironment value)
const Aws::String & GetSourceServerID() const
const Aws::String & GetEc2InstanceID() const
const Aws::String & GetPointInTimeSnapshotDateTime() const
void SetAgentVersion(AgentVersionT &&value)
const Aws::String & GetOriginAvailabilityZone() const
RecoveryInstance & WithEc2InstanceState(EC2InstanceState value)
RecoveryInstance & WithArn(ArnT &&value)
RecoveryInstance & WithOriginAvailabilityZone(OriginAvailabilityZoneT &&value)
RecoveryInstance & WithFailback(FailbackT &&value)
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