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>
24template <
typename DerivedClient = HealthLakeClient>
33 "FHIRDatastoreActiveWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"ACTIVE"),
41 "FHIRDatastoreActiveWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"CREATE_FAILED"),
49 "FHIRDatastoreActiveWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"DELETED"),
57 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeFHIRDatastore(req); };
59 return waiter.
Wait(request);
68 "FHIRDatastoreDeletedWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"DELETED"),
76 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeFHIRDatastore(req); };
78 return waiter.
Wait(request);
87 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"COMPLETED"),
94 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"COMPLETED_WITH_ERRORS"),
101 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"CANCEL_COMPLETED"),
104 const auto& result = outcome.
GetResult();
108 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"FAILED"),
111 const auto& result = outcome.
GetResult();
115 "FHIRExportJobCompletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"CANCEL_FAILED"),
118 const auto& result = outcome.
GetResult();
122 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeFHIRExportJob(req); };
124 return waiter.
Wait(request);
133 "FHIRImportJobCompletedWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"COMPLETED"),
136 const auto& result = outcome.
GetResult();
140 "FHIRImportJobCompletedWaiter", Aws::Utils::WaiterState::SUCCESS,
Aws::String(
"COMPLETED_WITH_ERRORS"),
143 const auto& result = outcome.
GetResult();
147 "FHIRImportJobCompletedWaiter", Aws::Utils::WaiterState::FAILURE,
Aws::String(
"FAILED"),
150 const auto& result = outcome.
GetResult();
154 auto operation = [
this](
const RequestT& req) {
return static_cast<DerivedClient*
>(
this)->DescribeFHIRImportJob(req); };
156 return waiter.
Wait(request);
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)
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