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>
47 template <
typename Ec2InstanceIDT = Aws::String>
49 m_ec2InstanceIDHasBeenSet =
true;
50 m_ec2InstanceID = std::forward<Ec2InstanceIDT>(value);
52 template <
typename Ec2InstanceIDT = Aws::String>
66 m_ec2InstanceStateHasBeenSet =
true;
67 m_ec2InstanceState = value;
81 template <
typename JobIDT = Aws::String>
83 m_jobIDHasBeenSet =
true;
84 m_jobID = std::forward<JobIDT>(value);
86 template <
typename JobIDT = Aws::String>
88 SetJobID(std::forward<JobIDT>(value));
99 template <
typename RecoveryInstanceIDT = Aws::String>
101 m_recoveryInstanceIDHasBeenSet =
true;
102 m_recoveryInstanceID = std::forward<RecoveryInstanceIDT>(value);
104 template <
typename RecoveryInstanceIDT = Aws::String>
117 template <
typename SourceServerIDT = Aws::String>
119 m_sourceServerIDHasBeenSet =
true;
120 m_sourceServerID = std::forward<SourceServerIDT>(value);
122 template <
typename SourceServerIDT = Aws::String>
135 template <
typename ArnT = Aws::String>
137 m_arnHasBeenSet =
true;
138 m_arn = std::forward<ArnT>(value);
140 template <
typename ArnT = Aws::String>
142 SetArn(std::forward<ArnT>(value));
153 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
155 m_tagsHasBeenSet =
true;
156 m_tags = std::forward<TagsT>(value);
158 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
160 SetTags(std::forward<TagsT>(value));
163 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
165 m_tagsHasBeenSet =
true;
166 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
178 template <
typename FailbackT = RecoveryInstanceFailback>
180 m_failbackHasBeenSet =
true;
181 m_failback = std::forward<FailbackT>(value);
183 template <
typename FailbackT = RecoveryInstanceFailback>
196 template <
typename DataReplicationInfoT = RecoveryInstanceDataReplicationInfo>
198 m_dataReplicationInfoHasBeenSet =
true;
199 m_dataReplicationInfo = std::forward<DataReplicationInfoT>(value);
201 template <
typename DataReplicationInfoT = RecoveryInstanceDataReplicationInfo>
214 template <
typename RecoveryInstancePropertiesT = RecoveryInstanceProperties>
216 m_recoveryInstancePropertiesHasBeenSet =
true;
217 m_recoveryInstanceProperties = std::forward<RecoveryInstancePropertiesT>(value);
219 template <
typename RecoveryInstancePropertiesT = RecoveryInstanceProperties>
233 template <
typename Po
intInTimeSnapshotDateTimeT = Aws::String>
235 m_pointInTimeSnapshotDateTimeHasBeenSet =
true;
236 m_pointInTimeSnapshotDateTime = std::forward<PointInTimeSnapshotDateTimeT>(value);
238 template <
typename Po
intInTimeSnapshotDateTimeT = Aws::String>
253 m_isDrillHasBeenSet =
true;
270 m_originEnvironmentHasBeenSet =
true;
271 m_originEnvironment = value;
285 template <
typename OriginAvailabilityZoneT = Aws::String>
287 m_originAvailabilityZoneHasBeenSet =
true;
288 m_originAvailabilityZone = std::forward<OriginAvailabilityZoneT>(value);
290 template <
typename OriginAvailabilityZoneT = Aws::String>
303 template <
typename AgentVersionT = Aws::String>
305 m_agentVersionHasBeenSet =
true;
306 m_agentVersion = std::forward<AgentVersionT>(value);
308 template <
typename AgentVersionT = Aws::String>
321 template <
typename SourceOutpostArnT = Aws::String>
323 m_sourceOutpostArnHasBeenSet =
true;
324 m_sourceOutpostArn = std::forward<SourceOutpostArnT>(value);
326 template <
typename SourceOutpostArnT = Aws::String>
347 RecoveryInstanceFailback m_failback;
349 RecoveryInstanceDataReplicationInfo m_dataReplicationInfo;
351 RecoveryInstanceProperties m_recoveryInstanceProperties;
355 bool m_isDrill{
false};
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;
bool TagsHasBeenSet() const
RecoveryInstance & WithRecoveryInstanceID(RecoveryInstanceIDT &&value)
RecoveryInstance & WithEc2InstanceID(Ec2InstanceIDT &&value)
bool Ec2InstanceIDHasBeenSet() const
RecoveryInstance & WithRecoveryInstanceProperties(RecoveryInstancePropertiesT &&value)
RecoveryInstance & WithTags(TagsT &&value)
void SetTags(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)
bool OriginEnvironmentHasBeenSet() const
void SetDataReplicationInfo(DataReplicationInfoT &&value)
const RecoveryInstanceFailback & GetFailback() const
RecoveryInstance & WithJobID(JobIDT &&value)
bool ArnHasBeenSet() const
const Aws::String & GetAgentVersion() const
AWS_DRS_API RecoveryInstance()=default
void SetIsDrill(bool value)
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
bool Ec2InstanceStateHasBeenSet() const
RecoveryInstance & WithSourceServerID(SourceServerIDT &&value)
void SetSourceServerID(SourceServerIDT &&value)
bool PointInTimeSnapshotDateTimeHasBeenSet() const
void SetOriginEnvironment(OriginEnvironment value)
void SetArn(ArnT &&value)
bool OriginAvailabilityZoneHasBeenSet() const
bool SourceServerIDHasBeenSet() const
OriginEnvironment GetOriginEnvironment() const
AWS_DRS_API RecoveryInstance(Aws::Utils::Json::JsonView jsonValue)
void SetFailback(FailbackT &&value)
const Aws::String & GetRecoveryInstanceID() const
bool SourceOutpostArnHasBeenSet() const
RecoveryInstance & WithPointInTimeSnapshotDateTime(PointInTimeSnapshotDateTimeT &&value)
bool JobIDHasBeenSet() const
void SetEc2InstanceState(EC2InstanceState value)
bool FailbackHasBeenSet() const
void SetRecoveryInstanceID(RecoveryInstanceIDT &&value)
void SetPointInTimeSnapshotDateTime(PointInTimeSnapshotDateTimeT &&value)
bool RecoveryInstanceIDHasBeenSet() const
bool IsDrillHasBeenSet() const
AWS_DRS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetJobID(JobIDT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
RecoveryInstance & WithIsDrill(bool value)
void SetEc2InstanceID(Ec2InstanceIDT &&value)
void SetOriginAvailabilityZone(OriginAvailabilityZoneT &&value)
bool DataReplicationInfoHasBeenSet() const
bool RecoveryInstancePropertiesHasBeenSet() const
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)
bool AgentVersionHasBeenSet() const
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