AWS SDK for C++

AWS SDK for C++ Version 1.11.788

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& GetEc2InstanceID() const { return m_ec2InstanceID; }
46 inline bool Ec2InstanceIDHasBeenSet() const { return m_ec2InstanceIDHasBeenSet; }
47 template <typename Ec2InstanceIDT = Aws::String>
48 void SetEc2InstanceID(Ec2InstanceIDT&& value) {
49 m_ec2InstanceIDHasBeenSet = true;
50 m_ec2InstanceID = std::forward<Ec2InstanceIDT>(value);
51 }
52 template <typename Ec2InstanceIDT = Aws::String>
53 RecoveryInstance& WithEc2InstanceID(Ec2InstanceIDT&& value) {
54 SetEc2InstanceID(std::forward<Ec2InstanceIDT>(value));
55 return *this;
56 }
58
60
63 inline EC2InstanceState GetEc2InstanceState() const { return m_ec2InstanceState; }
64 inline bool Ec2InstanceStateHasBeenSet() const { return m_ec2InstanceStateHasBeenSet; }
66 m_ec2InstanceStateHasBeenSet = true;
67 m_ec2InstanceState = value;
68 }
71 return *this;
72 }
74
76
79 inline const Aws::String& GetJobID() const { return m_jobID; }
80 inline bool JobIDHasBeenSet() const { return m_jobIDHasBeenSet; }
81 template <typename JobIDT = Aws::String>
82 void SetJobID(JobIDT&& value) {
83 m_jobIDHasBeenSet = true;
84 m_jobID = std::forward<JobIDT>(value);
85 }
86 template <typename JobIDT = Aws::String>
87 RecoveryInstance& WithJobID(JobIDT&& value) {
88 SetJobID(std::forward<JobIDT>(value));
89 return *this;
90 }
92
94
97 inline const Aws::String& GetRecoveryInstanceID() const { return m_recoveryInstanceID; }
98 inline bool RecoveryInstanceIDHasBeenSet() const { return m_recoveryInstanceIDHasBeenSet; }
99 template <typename RecoveryInstanceIDT = Aws::String>
100 void SetRecoveryInstanceID(RecoveryInstanceIDT&& value) {
101 m_recoveryInstanceIDHasBeenSet = true;
102 m_recoveryInstanceID = std::forward<RecoveryInstanceIDT>(value);
103 }
104 template <typename RecoveryInstanceIDT = Aws::String>
105 RecoveryInstance& WithRecoveryInstanceID(RecoveryInstanceIDT&& value) {
106 SetRecoveryInstanceID(std::forward<RecoveryInstanceIDT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::String& GetSourceServerID() const { return m_sourceServerID; }
116 inline bool SourceServerIDHasBeenSet() const { return m_sourceServerIDHasBeenSet; }
117 template <typename SourceServerIDT = Aws::String>
118 void SetSourceServerID(SourceServerIDT&& value) {
119 m_sourceServerIDHasBeenSet = true;
120 m_sourceServerID = std::forward<SourceServerIDT>(value);
121 }
122 template <typename SourceServerIDT = Aws::String>
123 RecoveryInstance& WithSourceServerID(SourceServerIDT&& value) {
124 SetSourceServerID(std::forward<SourceServerIDT>(value));
125 return *this;
126 }
128
130
133 inline const Aws::String& GetArn() const { return m_arn; }
134 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
135 template <typename ArnT = Aws::String>
136 void SetArn(ArnT&& value) {
137 m_arnHasBeenSet = true;
138 m_arn = std::forward<ArnT>(value);
139 }
140 template <typename ArnT = Aws::String>
141 RecoveryInstance& WithArn(ArnT&& value) {
142 SetArn(std::forward<ArnT>(value));
143 return *this;
144 }
146
148
151 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
152 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
153 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
154 void SetTags(TagsT&& value) {
155 m_tagsHasBeenSet = true;
156 m_tags = std::forward<TagsT>(value);
157 }
158 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
159 RecoveryInstance& WithTags(TagsT&& value) {
160 SetTags(std::forward<TagsT>(value));
161 return *this;
162 }
163 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
164 RecoveryInstance& AddTags(TagsKeyT&& key, TagsValueT&& value) {
165 m_tagsHasBeenSet = true;
166 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
167 return *this;
168 }
170
172
176 inline const RecoveryInstanceFailback& GetFailback() const { return m_failback; }
177 inline bool FailbackHasBeenSet() const { return m_failbackHasBeenSet; }
178 template <typename FailbackT = RecoveryInstanceFailback>
179 void SetFailback(FailbackT&& value) {
180 m_failbackHasBeenSet = true;
181 m_failback = std::forward<FailbackT>(value);
182 }
183 template <typename FailbackT = RecoveryInstanceFailback>
184 RecoveryInstance& WithFailback(FailbackT&& value) {
185 SetFailback(std::forward<FailbackT>(value));
186 return *this;
187 }
189
191
194 inline const RecoveryInstanceDataReplicationInfo& GetDataReplicationInfo() const { return m_dataReplicationInfo; }
195 inline bool DataReplicationInfoHasBeenSet() const { return m_dataReplicationInfoHasBeenSet; }
196 template <typename DataReplicationInfoT = RecoveryInstanceDataReplicationInfo>
197 void SetDataReplicationInfo(DataReplicationInfoT&& value) {
198 m_dataReplicationInfoHasBeenSet = true;
199 m_dataReplicationInfo = std::forward<DataReplicationInfoT>(value);
200 }
201 template <typename DataReplicationInfoT = RecoveryInstanceDataReplicationInfo>
202 RecoveryInstance& WithDataReplicationInfo(DataReplicationInfoT&& value) {
203 SetDataReplicationInfo(std::forward<DataReplicationInfoT>(value));
204 return *this;
205 }
207
209
212 inline const RecoveryInstanceProperties& GetRecoveryInstanceProperties() const { return m_recoveryInstanceProperties; }
213 inline bool RecoveryInstancePropertiesHasBeenSet() const { return m_recoveryInstancePropertiesHasBeenSet; }
214 template <typename RecoveryInstancePropertiesT = RecoveryInstanceProperties>
215 void SetRecoveryInstanceProperties(RecoveryInstancePropertiesT&& value) {
216 m_recoveryInstancePropertiesHasBeenSet = true;
217 m_recoveryInstanceProperties = std::forward<RecoveryInstancePropertiesT>(value);
218 }
219 template <typename RecoveryInstancePropertiesT = RecoveryInstanceProperties>
220 RecoveryInstance& WithRecoveryInstanceProperties(RecoveryInstancePropertiesT&& value) {
221 SetRecoveryInstanceProperties(std::forward<RecoveryInstancePropertiesT>(value));
222 return *this;
223 }
225
227
231 inline const Aws::String& GetPointInTimeSnapshotDateTime() const { return m_pointInTimeSnapshotDateTime; }
232 inline bool PointInTimeSnapshotDateTimeHasBeenSet() const { return m_pointInTimeSnapshotDateTimeHasBeenSet; }
233 template <typename PointInTimeSnapshotDateTimeT = Aws::String>
234 void SetPointInTimeSnapshotDateTime(PointInTimeSnapshotDateTimeT&& value) {
235 m_pointInTimeSnapshotDateTimeHasBeenSet = true;
236 m_pointInTimeSnapshotDateTime = std::forward<PointInTimeSnapshotDateTimeT>(value);
237 }
238 template <typename PointInTimeSnapshotDateTimeT = Aws::String>
239 RecoveryInstance& WithPointInTimeSnapshotDateTime(PointInTimeSnapshotDateTimeT&& value) {
240 SetPointInTimeSnapshotDateTime(std::forward<PointInTimeSnapshotDateTimeT>(value));
241 return *this;
242 }
244
246
250 inline bool GetIsDrill() const { return m_isDrill; }
251 inline bool IsDrillHasBeenSet() const { return m_isDrillHasBeenSet; }
252 inline void SetIsDrill(bool value) {
253 m_isDrillHasBeenSet = true;
254 m_isDrill = value;
255 }
256 inline RecoveryInstance& WithIsDrill(bool value) {
257 SetIsDrill(value);
258 return *this;
259 }
261
263
267 inline OriginEnvironment GetOriginEnvironment() const { return m_originEnvironment; }
268 inline bool OriginEnvironmentHasBeenSet() const { return m_originEnvironmentHasBeenSet; }
270 m_originEnvironmentHasBeenSet = true;
271 m_originEnvironment = value;
272 }
275 return *this;
276 }
278
280
283 inline const Aws::String& GetOriginAvailabilityZone() const { return m_originAvailabilityZone; }
284 inline bool OriginAvailabilityZoneHasBeenSet() const { return m_originAvailabilityZoneHasBeenSet; }
285 template <typename OriginAvailabilityZoneT = Aws::String>
286 void SetOriginAvailabilityZone(OriginAvailabilityZoneT&& value) {
287 m_originAvailabilityZoneHasBeenSet = true;
288 m_originAvailabilityZone = std::forward<OriginAvailabilityZoneT>(value);
289 }
290 template <typename OriginAvailabilityZoneT = Aws::String>
291 RecoveryInstance& WithOriginAvailabilityZone(OriginAvailabilityZoneT&& value) {
292 SetOriginAvailabilityZone(std::forward<OriginAvailabilityZoneT>(value));
293 return *this;
294 }
296
298
301 inline const Aws::String& GetAgentVersion() const { return m_agentVersion; }
302 inline bool AgentVersionHasBeenSet() const { return m_agentVersionHasBeenSet; }
303 template <typename AgentVersionT = Aws::String>
304 void SetAgentVersion(AgentVersionT&& value) {
305 m_agentVersionHasBeenSet = true;
306 m_agentVersion = std::forward<AgentVersionT>(value);
307 }
308 template <typename AgentVersionT = Aws::String>
309 RecoveryInstance& WithAgentVersion(AgentVersionT&& value) {
310 SetAgentVersion(std::forward<AgentVersionT>(value));
311 return *this;
312 }
314
316
319 inline const Aws::String& GetSourceOutpostArn() const { return m_sourceOutpostArn; }
320 inline bool SourceOutpostArnHasBeenSet() const { return m_sourceOutpostArnHasBeenSet; }
321 template <typename SourceOutpostArnT = Aws::String>
322 void SetSourceOutpostArn(SourceOutpostArnT&& value) {
323 m_sourceOutpostArnHasBeenSet = true;
324 m_sourceOutpostArn = std::forward<SourceOutpostArnT>(value);
325 }
326 template <typename SourceOutpostArnT = Aws::String>
327 RecoveryInstance& WithSourceOutpostArn(SourceOutpostArnT&& value) {
328 SetSourceOutpostArn(std::forward<SourceOutpostArnT>(value));
329 return *this;
330 }
332 private:
333 Aws::String m_ec2InstanceID;
334
336
337 Aws::String m_jobID;
338
339 Aws::String m_recoveryInstanceID;
340
341 Aws::String m_sourceServerID;
342
343 Aws::String m_arn;
344
346
347 RecoveryInstanceFailback m_failback;
348
349 RecoveryInstanceDataReplicationInfo m_dataReplicationInfo;
350
351 RecoveryInstanceProperties m_recoveryInstanceProperties;
352
353 Aws::String m_pointInTimeSnapshotDateTime;
354
355 bool m_isDrill{false};
356
358
359 Aws::String m_originAvailabilityZone;
360
361 Aws::String m_agentVersion;
362
363 Aws::String m_sourceOutpostArn;
364 bool m_ec2InstanceIDHasBeenSet = false;
365 bool m_ec2InstanceStateHasBeenSet = false;
366 bool m_jobIDHasBeenSet = false;
367 bool m_recoveryInstanceIDHasBeenSet = false;
368 bool m_sourceServerIDHasBeenSet = false;
369 bool m_arnHasBeenSet = false;
370 bool m_tagsHasBeenSet = false;
371 bool m_failbackHasBeenSet = false;
372 bool m_dataReplicationInfoHasBeenSet = false;
373 bool m_recoveryInstancePropertiesHasBeenSet = false;
374 bool m_pointInTimeSnapshotDateTimeHasBeenSet = false;
375 bool m_isDrillHasBeenSet = false;
376 bool m_originEnvironmentHasBeenSet = false;
377 bool m_originAvailabilityZoneHasBeenSet = false;
378 bool m_agentVersionHasBeenSet = false;
379 bool m_sourceOutpostArnHasBeenSet = 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