AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
CodeGuruReviewerWaiter.h
1
6#pragma once
7#include <aws/codeguru-reviewer/CodeGuruReviewerClient.h>
8#include <aws/codeguru-reviewer/model/DescribeCodeReviewRequest.h>
9#include <aws/codeguru-reviewer/model/DescribeCodeReviewResult.h>
10#include <aws/codeguru-reviewer/model/DescribeRepositoryAssociationRequest.h>
11#include <aws/codeguru-reviewer/model/DescribeRepositoryAssociationResult.h>
12#include <aws/codeguru-reviewer/model/JobState.h>
13#include <aws/codeguru-reviewer/model/RepositoryAssociationState.h>
14#include <aws/core/utils/Waiter.h>
15#include <aws/core/utils/memory/AWSMemory.h>
16
17#include <algorithm>
18
19namespace Aws {
20namespace CodeGuruReviewer {
21
22template <typename DerivedClient = CodeGuruReviewerClient>
24 public:
26 const Model::DescribeCodeReviewRequest& request) {
27 using OutcomeT = Model::DescribeCodeReviewOutcome;
28 using RequestT = Model::DescribeCodeReviewRequest;
31 "CodeReviewCompletedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("Completed"),
32 [](const Model::DescribeCodeReviewOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
33 if (!outcome.IsSuccess()) return false;
34 const auto& result = outcome.GetResult();
35 return Model::JobStateMapper::GetNameForJobState(result.GetCodeReview().GetState()) == expected.get<Aws::String>();
36 }));
38 "CodeReviewCompletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("Failed"),
39 [](const Model::DescribeCodeReviewOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
40 if (!outcome.IsSuccess()) return false;
41 const auto& result = outcome.GetResult();
42 return Model::JobStateMapper::GetNameForJobState(result.GetCodeReview().GetState()) == expected.get<Aws::String>();
43 }));
45 "CodeReviewCompletedWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("Pending"),
46 [](const Model::DescribeCodeReviewOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
47 if (!outcome.IsSuccess()) return false;
48 const auto& result = outcome.GetResult();
49 return Model::JobStateMapper::GetNameForJobState(result.GetCodeReview().GetState()) == expected.get<Aws::String>();
50 }));
51
52 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeCodeReview(req); };
53 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(10, 12, std::move(acceptors), operation, "WaitUntilCodeReviewCompleted");
54 return waiter.Wait(request);
55 }
56
63 "RepositoryAssociationSucceededWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("Associated"),
64 [](const Model::DescribeRepositoryAssociationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
65 if (!outcome.IsSuccess()) return false;
66 const auto& result = outcome.GetResult();
68 result.GetRepositoryAssociation().GetState()) == expected.get<Aws::String>();
69 }));
71 "RepositoryAssociationSucceededWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("Failed"),
72 [](const Model::DescribeRepositoryAssociationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
73 if (!outcome.IsSuccess()) return false;
74 const auto& result = outcome.GetResult();
76 result.GetRepositoryAssociation().GetState()) == expected.get<Aws::String>();
77 }));
79 "RepositoryAssociationSucceededWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("Associating"),
80 [](const Model::DescribeRepositoryAssociationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
81 if (!outcome.IsSuccess()) return false;
82 const auto& result = outcome.GetResult();
84 result.GetRepositoryAssociation().GetState()) == expected.get<Aws::String>();
85 }));
86
87 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeRepositoryAssociation(req); };
88 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(10, 12, std::move(acceptors), operation, "WaitUntilRepositoryAssociationSucceeded");
89 return waiter.Wait(request);
90 }
91};
92} // namespace CodeGuruReviewer
93} // namespace Aws
Aws::Utils::WaiterOutcome< Model::DescribeCodeReviewOutcome > WaitUntilCodeReviewCompleted(const Model::DescribeCodeReviewRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeRepositoryAssociationOutcome > WaitUntilRepositoryAssociationSucceeded(const Model::DescribeRepositoryAssociationRequest &request)
bool IsSuccess() const
const R & GetResult() const
WaiterOutcome< OutcomeT > Wait(const RequestT &request)
AWS_CODEGURUREVIEWER_API Aws::String GetNameForJobState(JobState value)
AWS_CODEGURUREVIEWER_API Aws::String GetNameForRepositoryAssociationState(RepositoryAssociationState value)
Aws::Utils::Outcome< DescribeCodeReviewResult, CodeGuruReviewerError > DescribeCodeReviewOutcome
Aws::Utils::Outcome< DescribeRepositoryAssociationResult, CodeGuruReviewerError > DescribeRepositoryAssociationOutcome
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