AWS SDK for C++

AWS SDK for C++ Version 1.11.784

Loading...
Searching...
No Matches
HealthLakeWaiter.h
1
6#pragma once
7#include <aws/core/utils/Waiter.h>
8#include <aws/core/utils/memory/AWSMemory.h>
9#include <aws/healthlake/HealthLakeClient.h>
10#include <aws/healthlake/model/DatastoreStatus.h>
11#include <aws/healthlake/model/DescribeFHIRDatastoreRequest.h>
12#include <aws/healthlake/model/DescribeFHIRDatastoreResult.h>
13#include <aws/healthlake/model/DescribeFHIRExportJobRequest.h>
14#include <aws/healthlake/model/DescribeFHIRExportJobResult.h>
15#include <aws/healthlake/model/DescribeFHIRImportJobRequest.h>
16#include <aws/healthlake/model/DescribeFHIRImportJobResult.h>
17#include <aws/healthlake/model/JobStatus.h>
18
19#include <algorithm>
20
21namespace Aws {
22namespace HealthLake {
23
24template <typename DerivedClient = HealthLakeClient>
26 public:
33 "FHIRDatastoreActiveWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("ACTIVE"),
34 [](const Model::DescribeFHIRDatastoreOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
35 if (!outcome.IsSuccess()) return false;
36 const auto& result = outcome.GetResult();
37 return Model::DatastoreStatusMapper::GetNameForDatastoreStatus(result.GetDatastoreProperties().GetDatastoreStatus()) ==
38 expected.get<Aws::String>();
39 }));
41 "FHIRDatastoreActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("CREATE_FAILED"),
42 [](const Model::DescribeFHIRDatastoreOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
43 if (!outcome.IsSuccess()) return false;
44 const auto& result = outcome.GetResult();
45 return Model::DatastoreStatusMapper::GetNameForDatastoreStatus(result.GetDatastoreProperties().GetDatastoreStatus()) ==
46 expected.get<Aws::String>();
47 }));
49 "FHIRDatastoreActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("DELETED"),
50 [](const Model::DescribeFHIRDatastoreOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
51 if (!outcome.IsSuccess()) return false;
52 const auto& result = outcome.GetResult();
53 return Model::DatastoreStatusMapper::GetNameForDatastoreStatus(result.GetDatastoreProperties().GetDatastoreStatus()) ==
54 expected.get<Aws::String>();
55 }));
56
57 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeFHIRDatastore(req); };
58 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(60, 2, std::move(acceptors), operation, "WaitUntilFHIRDatastoreActive");
59 return waiter.Wait(request);
60 }
61
68 "FHIRDatastoreDeletedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("DELETED"),
69 [](const Model::DescribeFHIRDatastoreOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
70 if (!outcome.IsSuccess()) return false;
71 const auto& result = outcome.GetResult();
72 return Model::DatastoreStatusMapper::GetNameForDatastoreStatus(result.GetDatastoreProperties().GetDatastoreStatus()) ==
73 expected.get<Aws::String>();
74 }));
75
76 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeFHIRDatastore(req); };
77 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(120, 1, std::move(acceptors), operation, "WaitUntilFHIRDatastoreDeleted");
78 return waiter.Wait(request);
79 }
80
87 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("COMPLETED"),
88 [](const Model::DescribeFHIRExportJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
89 if (!outcome.IsSuccess()) return false;
90 const auto& result = outcome.GetResult();
91 return Model::JobStatusMapper::GetNameForJobStatus(result.GetExportJobProperties().GetJobStatus()) == expected.get<Aws::String>();
92 }));
94 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("COMPLETED_WITH_ERRORS"),
95 [](const Model::DescribeFHIRExportJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
96 if (!outcome.IsSuccess()) return false;
97 const auto& result = outcome.GetResult();
98 return Model::JobStatusMapper::GetNameForJobStatus(result.GetExportJobProperties().GetJobStatus()) == expected.get<Aws::String>();
99 }));
101 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("CANCEL_COMPLETED"),
102 [](const Model::DescribeFHIRExportJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
103 if (!outcome.IsSuccess()) return false;
104 const auto& result = outcome.GetResult();
105 return Model::JobStatusMapper::GetNameForJobStatus(result.GetExportJobProperties().GetJobStatus()) == expected.get<Aws::String>();
106 }));
108 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED"),
109 [](const Model::DescribeFHIRExportJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
110 if (!outcome.IsSuccess()) return false;
111 const auto& result = outcome.GetResult();
112 return Model::JobStatusMapper::GetNameForJobStatus(result.GetExportJobProperties().GetJobStatus()) == expected.get<Aws::String>();
113 }));
115 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("CANCEL_FAILED"),
116 [](const Model::DescribeFHIRExportJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
117 if (!outcome.IsSuccess()) return false;
118 const auto& result = outcome.GetResult();
119 return Model::JobStatusMapper::GetNameForJobStatus(result.GetExportJobProperties().GetJobStatus()) == expected.get<Aws::String>();
120 }));
121
122 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeFHIRExportJob(req); };
123 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(120, 1, std::move(acceptors), operation, "WaitUntilFHIRExportJobCompleted");
124 return waiter.Wait(request);
125 }
126
133 "FHIRImportJobCompletedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("COMPLETED"),
134 [](const Model::DescribeFHIRImportJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
135 if (!outcome.IsSuccess()) return false;
136 const auto& result = outcome.GetResult();
137 return Model::JobStatusMapper::GetNameForJobStatus(result.GetImportJobProperties().GetJobStatus()) == expected.get<Aws::String>();
138 }));
140 "FHIRImportJobCompletedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("COMPLETED_WITH_ERRORS"),
141 [](const Model::DescribeFHIRImportJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
142 if (!outcome.IsSuccess()) return false;
143 const auto& result = outcome.GetResult();
144 return Model::JobStatusMapper::GetNameForJobStatus(result.GetImportJobProperties().GetJobStatus()) == expected.get<Aws::String>();
145 }));
147 "FHIRImportJobCompletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED"),
148 [](const Model::DescribeFHIRImportJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
149 if (!outcome.IsSuccess()) return false;
150 const auto& result = outcome.GetResult();
151 return Model::JobStatusMapper::GetNameForJobStatus(result.GetImportJobProperties().GetJobStatus()) == expected.get<Aws::String>();
152 }));
153
154 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeFHIRImportJob(req); };
155 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(120, 1, std::move(acceptors), operation, "WaitUntilFHIRImportJobCompleted");
156 return waiter.Wait(request);
157 }
158};
159} // namespace HealthLake
160} // namespace Aws
Aws::Utils::WaiterOutcome< Model::DescribeFHIRExportJobOutcome > WaitUntilFHIRExportJobCompleted(const Model::DescribeFHIRExportJobRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeFHIRImportJobOutcome > WaitUntilFHIRImportJobCompleted(const Model::DescribeFHIRImportJobRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeFHIRDatastoreOutcome > WaitUntilFHIRDatastoreDeleted(const Model::DescribeFHIRDatastoreRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeFHIRDatastoreOutcome > WaitUntilFHIRDatastoreActive(const Model::DescribeFHIRDatastoreRequest &request)
bool IsSuccess() const
const R & GetResult() const
WaiterOutcome< OutcomeT > Wait(const RequestT &request)
AWS_HEALTHLAKE_API Aws::String GetNameForDatastoreStatus(DatastoreStatus value)
AWS_HEALTHLAKE_API Aws::String GetNameForJobStatus(JobStatus value)
Aws::Utils::Outcome< DescribeFHIRDatastoreResult, HealthLakeError > DescribeFHIRDatastoreOutcome
Aws::Utils::Outcome< DescribeFHIRImportJobResult, HealthLakeError > DescribeFHIRImportJobOutcome
Aws::Utils::Outcome< DescribeFHIRExportJobResult, HealthLakeError > DescribeFHIRExportJobOutcome
Crt::Variant< int, bool, Aws::String > ExpectedValue
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
UniquePtr< T > MakeUnique(const char *allocationTag, ArgTypes &&... args)
std::vector< T, Aws::Allocator< T > > Vector