AWS SDK for C++

AWS SDK for C++ Version 1.11.849

Loading...
Searching...
No Matches
Inspector2Waiter.h
1
6#pragma once
7#include <aws/core/utils/Waiter.h>
8#include <aws/core/utils/memory/AWSMemory.h>
9#include <aws/inspector2/Inspector2Client.h>
10#include <aws/inspector2/model/ConnectorHealthStatus.h>
11#include <aws/inspector2/model/EnablementStatus.h>
12#include <aws/inspector2/model/ListConnectorsRequest.h>
13#include <aws/inspector2/model/ListConnectorsResult.h>
14
15#include <algorithm>
16
17namespace Aws {
18namespace Inspector2 {
19
20template <typename DerivedClient = Inspector2Client>
22 public:
24 using OutcomeT = Model::ListConnectorsOutcome;
25 using RequestT = Model::ListConnectorsRequest;
28 "ConnectorEnabledWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("ENABLED"),
29 [](const Model::ListConnectorsOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
30 if (!outcome.IsSuccess()) return false;
31 const auto& result = outcome.GetResult();
32 return std::all_of(result.GetItems().begin(), result.GetItems().end(), [&](const Model::Connector& item) {
33 return Model::EnablementStatusMapper::GetNameForEnablementStatus(item.GetEnablementStatus()) == expected.get<Aws::String>();
34 });
35 }));
37 "ConnectorEnabledWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED_TO_ENABLE"),
38 [](const Model::ListConnectorsOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
39 if (!outcome.IsSuccess()) return false;
40 const auto& result = outcome.GetResult();
41 return std::any_of(result.GetItems().begin(), result.GetItems().end(), [&](const Model::Connector& item) {
42 return Model::EnablementStatusMapper::GetNameForEnablementStatus(item.GetEnablementStatus()) == expected.get<Aws::String>();
43 });
44 }));
46 "ConnectorEnabledWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED_TO_UPDATE"),
47 [](const Model::ListConnectorsOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
48 if (!outcome.IsSuccess()) return false;
49 const auto& result = outcome.GetResult();
50 return std::any_of(result.GetItems().begin(), result.GetItems().end(), [&](const Model::Connector& item) {
51 return Model::EnablementStatusMapper::GetNameForEnablementStatus(item.GetEnablementStatus()) == expected.get<Aws::String>();
52 });
53 }));
54
55 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->ListConnectors(req); };
56 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(30, 4, std::move(acceptors), operation, "WaitUntilConnectorEnabled");
57 return waiter.Wait(request);
58 }
59
61 using OutcomeT = Model::ListConnectorsOutcome;
62 using RequestT = Model::ListConnectorsRequest;
65 "ConnectorDeletedWaiter", Aws::Utils::WaiterState::SUCCESS, true,
66 [](const Model::ListConnectorsOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
67 if (!outcome.IsSuccess()) return false;
68 const auto& result = outcome.GetResult();
69 return (result.GetItems().size() == 0) == expected.get<bool>();
70 }));
72 "ConnectorDeletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED_TO_DELETE"),
73 [](const Model::ListConnectorsOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
74 if (!outcome.IsSuccess()) return false;
75 const auto& result = outcome.GetResult();
76 return std::any_of(result.GetItems().begin(), result.GetItems().end(), [&](const Model::Connector& item) {
77 return Model::EnablementStatusMapper::GetNameForEnablementStatus(item.GetEnablementStatus()) == expected.get<Aws::String>();
78 });
79 }));
80
81 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->ListConnectors(req); };
82 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(30, 4, std::move(acceptors), operation, "WaitUntilConnectorDeleted");
83 return waiter.Wait(request);
84 }
85
87 using OutcomeT = Model::ListConnectorsOutcome;
88 using RequestT = Model::ListConnectorsRequest;
91 "ConnectorConnectedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("CONNECTED"),
92 [](const Model::ListConnectorsOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
93 if (!outcome.IsSuccess()) return false;
94 const auto& result = outcome.GetResult();
95 return std::all_of(result.GetItems().begin(), result.GetItems().end(), [&](const Model::Connector& item) {
96 return Model::ConnectorHealthStatusMapper::GetNameForConnectorHealthStatus(item.GetHealth().GetConnectorStatus()) ==
97 expected.get<Aws::String>();
98 });
99 }));
101 "ConnectorConnectedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED_TO_CONNECT"),
102 [](const Model::ListConnectorsOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
103 if (!outcome.IsSuccess()) return false;
104 const auto& result = outcome.GetResult();
105 return std::any_of(result.GetItems().begin(), result.GetItems().end(), [&](const Model::Connector& item) {
106 return Model::ConnectorHealthStatusMapper::GetNameForConnectorHealthStatus(item.GetHealth().GetConnectorStatus()) ==
107 expected.get<Aws::String>();
108 });
109 }));
111 "ConnectorConnectedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("FAILED_TO_ENABLE"),
112 [](const Model::ListConnectorsOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
113 if (!outcome.IsSuccess()) return false;
114 const auto& result = outcome.GetResult();
115 return std::any_of(result.GetItems().begin(), result.GetItems().end(), [&](const Model::Connector& item) {
116 return Model::EnablementStatusMapper::GetNameForEnablementStatus(item.GetEnablementStatus()) == expected.get<Aws::String>();
117 });
118 }));
119
120 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->ListConnectors(req); };
121 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(30, 4, std::move(acceptors), operation, "WaitUntilConnectorConnected");
122 return waiter.Wait(request);
123 }
124};
125} // namespace Inspector2
126} // namespace Aws
Aws::Utils::WaiterOutcome< Model::ListConnectorsOutcome > WaitUntilConnectorDeleted(const Model::ListConnectorsRequest &request)
Aws::Utils::WaiterOutcome< Model::ListConnectorsOutcome > WaitUntilConnectorEnabled(const Model::ListConnectorsRequest &request)
Aws::Utils::WaiterOutcome< Model::ListConnectorsOutcome > WaitUntilConnectorConnected(const Model::ListConnectorsRequest &request)
bool IsSuccess() const
const R & GetResult() const
WaiterOutcome< OutcomeT > Wait(const RequestT &request)
Aws::Utils::Outcome< ListConnectorsResult, Inspector2Error > ListConnectorsOutcome
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