AWS SDK for C++

AWS SDK for C++ Version 1.11.911

Loading...
Searching...
No Matches
EndUserMessagingWaiter.h
1
6#pragma once
7#include <aws/core/utils/Waiter.h>
8#include <aws/core/utils/memory/AWSMemory.h>
9#include <aws/endusermessaging/EndUserMessagingClient.h>
10#include <aws/endusermessaging/model/GetBrandProfileRequest.h>
11#include <aws/endusermessaging/model/GetBrandProfileResult.h>
12#include <aws/endusermessaging/model/GetJobRequest.h>
13#include <aws/endusermessaging/model/GetJobResult.h>
14#include <aws/endusermessaging/model/JobStatus.h>
15#include <aws/endusermessaging/model/Status.h>
16
17#include <algorithm>
18
19namespace Aws {
20namespace EndUserMessaging {
21
22template <typename DerivedClient = EndUserMessagingClient>
24 public:
26 using OutcomeT = Model::GetBrandProfileOutcome;
27 using RequestT = Model::GetBrandProfileRequest;
30 "BrandProfileActiveWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("ACTIVE"),
31 [](const Model::GetBrandProfileOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
32 if (!outcome.IsSuccess()) return false;
33 const auto& result = outcome.GetResult();
34 return Model::StatusMapper::GetNameForStatus(result.GetStatus()) == expected.get<Aws::String>();
35 }));
37 "BrandProfileActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("BLOCKED"),
38 [](const Model::GetBrandProfileOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
39 if (!outcome.IsSuccess()) return false;
40 const auto& result = outcome.GetResult();
41 return Model::StatusMapper::GetNameForStatus(result.GetStatus()) == expected.get<Aws::String>();
42 }));
44 "BrandProfileActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("CANCELLED"),
45 [](const Model::GetBrandProfileOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
46 if (!outcome.IsSuccess()) return false;
47 const auto& result = outcome.GetResult();
48 return Model::StatusMapper::GetNameForStatus(result.GetStatus()) == expected.get<Aws::String>();
49 }));
51 "BrandProfileActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED"),
52 [](const Model::GetBrandProfileOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
53 if (!outcome.IsSuccess()) return false;
54 const auto& result = outcome.GetResult();
55 return Model::StatusMapper::GetNameForStatus(result.GetStatus()) == expected.get<Aws::String>();
56 }));
57
58 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetBrandProfile(req); };
59 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(30, 4, std::move(acceptors), operation, "WaitUntilBrandProfileActive");
60 return waiter.Wait(request);
61 }
62
64 using OutcomeT = Model::GetJobOutcome;
65 using RequestT = Model::GetJobRequest;
68 "JobSuccessWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("SUCCESS"),
69 [](const Model::GetJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
70 if (!outcome.IsSuccess()) return false;
71 const auto& result = outcome.GetResult();
72 return Model::JobStatusMapper::GetNameForJobStatus(result.GetStatus()) == expected.get<Aws::String>();
73 }));
75 "JobSuccessWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED"),
76 [](const Model::GetJobOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
77 if (!outcome.IsSuccess()) return false;
78 const auto& result = outcome.GetResult();
79 return Model::JobStatusMapper::GetNameForJobStatus(result.GetStatus()) == expected.get<Aws::String>();
80 }));
81
82 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetJob(req); };
83 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(30, 4, std::move(acceptors), operation, "WaitUntilJobSuccess");
84 return waiter.Wait(request);
85 }
86};
87} // namespace EndUserMessaging
88} // namespace Aws
Aws::Utils::WaiterOutcome< Model::GetBrandProfileOutcome > WaitUntilBrandProfileActive(const Model::GetBrandProfileRequest &request)
Aws::Utils::WaiterOutcome< Model::GetJobOutcome > WaitUntilJobSuccess(const Model::GetJobRequest &request)
bool IsSuccess() const
const R & GetResult() const
WaiterOutcome< OutcomeT > Wait(const RequestT &request)
AWS_ENDUSERMESSAGING_API Aws::String GetNameForJobStatus(JobStatus value)
AWS_ENDUSERMESSAGING_API Aws::String GetNameForStatus(Status value)
Aws::Utils::Outcome< GetBrandProfileResult, EndUserMessagingError > GetBrandProfileOutcome
Aws::Utils::Outcome< GetJobResult, EndUserMessagingError > GetJobOutcome
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