AWS SDK for C++

AWS SDK for C++ Version 1.11.782

Loading...
Searching...
No Matches
LambdaWaiter.h
1
6#pragma once
7#include <aws/core/utils/Waiter.h>
8#include <aws/core/utils/memory/AWSMemory.h>
9#include <aws/lambda/LambdaClient.h>
10#include <aws/lambda/model/GetFunctionConfigurationRequest.h>
11#include <aws/lambda/model/GetFunctionConfigurationResult.h>
12#include <aws/lambda/model/GetFunctionRequest.h>
13#include <aws/lambda/model/GetFunctionResult.h>
14#include <aws/lambda/model/LastUpdateStatus.h>
15#include <aws/lambda/model/State.h>
16
17#include <algorithm>
18
19namespace Aws {
20namespace Lambda {
21
22template <typename DerivedClient = LambdaClient>
24 public:
26 using OutcomeT = Model::GetFunctionOutcome;
27 using RequestT = Model::GetFunctionRequest;
30 "FunctionActiveV2Waiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("Active"),
31 [](const Model::GetFunctionOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
32 if (!outcome.IsSuccess()) return false;
33 const auto& result = outcome.GetResult();
34 return Model::StateMapper::GetNameForState(result.GetConfiguration().GetState()) == expected.get<Aws::String>();
35 }));
37 "FunctionActiveV2Waiter", Aws::Utils::WaiterState::FAILURE, Aws::String("Failed"),
38 [](const Model::GetFunctionOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
39 if (!outcome.IsSuccess()) return false;
40 const auto& result = outcome.GetResult();
41 return Model::StateMapper::GetNameForState(result.GetConfiguration().GetState()) == expected.get<Aws::String>();
42 }));
44 "FunctionActiveV2Waiter", Aws::Utils::WaiterState::RETRY, Aws::String("Pending"),
45 [](const Model::GetFunctionOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
46 if (!outcome.IsSuccess()) return false;
47 const auto& result = outcome.GetResult();
48 return Model::StateMapper::GetNameForState(result.GetConfiguration().GetState()) == expected.get<Aws::String>();
49 }));
50
51 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetFunction(req); };
52 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(1, 300, std::move(acceptors), operation, "WaitUntilFunctionActiveV2");
53 return waiter.Wait(request);
54 }
55
57 using OutcomeT = Model::GetFunctionOutcome;
58 using RequestT = Model::GetFunctionRequest;
60 acceptors.emplace_back(
61 Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FunctionExistsWaiter", Aws::Utils::WaiterState::SUCCESS, false));
62 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FunctionExistsWaiter", Aws::Utils::WaiterState::RETRY,
63 Aws::String("ResourceNotFoundException")));
64
65 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetFunction(req); };
66 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(1, 20, std::move(acceptors), operation, "WaitUntilFunctionExists");
67 return waiter.Wait(request);
68 }
69
71 using OutcomeT = Model::GetFunctionOutcome;
72 using RequestT = Model::GetFunctionRequest;
75 "FunctionUpdatedV2Waiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("Successful"),
76 [](const Model::GetFunctionOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
77 if (!outcome.IsSuccess()) return false;
78 const auto& result = outcome.GetResult();
79 return Model::LastUpdateStatusMapper::GetNameForLastUpdateStatus(result.GetConfiguration().GetLastUpdateStatus()) ==
80 expected.get<Aws::String>();
81 }));
83 "FunctionUpdatedV2Waiter", Aws::Utils::WaiterState::FAILURE, Aws::String("Failed"),
84 [](const Model::GetFunctionOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
85 if (!outcome.IsSuccess()) return false;
86 const auto& result = outcome.GetResult();
87 return Model::LastUpdateStatusMapper::GetNameForLastUpdateStatus(result.GetConfiguration().GetLastUpdateStatus()) ==
88 expected.get<Aws::String>();
89 }));
91 "FunctionUpdatedV2Waiter", Aws::Utils::WaiterState::RETRY, Aws::String("InProgress"),
92 [](const Model::GetFunctionOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
93 if (!outcome.IsSuccess()) return false;
94 const auto& result = outcome.GetResult();
95 return Model::LastUpdateStatusMapper::GetNameForLastUpdateStatus(result.GetConfiguration().GetLastUpdateStatus()) ==
96 expected.get<Aws::String>();
97 }));
98
99 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetFunction(req); };
100 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(1, 300, std::move(acceptors), operation, "WaitUntilFunctionUpdatedV2");
101 return waiter.Wait(request);
102 }
103
110 "FunctionActiveWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("Active"),
111 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
112 if (!outcome.IsSuccess()) return false;
113 const auto& result = outcome.GetResult();
114 return Model::StateMapper::GetNameForState(result.GetState()) == expected.get<Aws::String>();
115 }));
117 "FunctionActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("Failed"),
118 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
119 if (!outcome.IsSuccess()) return false;
120 const auto& result = outcome.GetResult();
121 return Model::StateMapper::GetNameForState(result.GetState()) == expected.get<Aws::String>();
122 }));
124 "FunctionActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("Pending"),
125 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
126 if (!outcome.IsSuccess()) return false;
127 const auto& result = outcome.GetResult();
128 return Model::StateMapper::GetNameForState(result.GetState()) == expected.get<Aws::String>();
129 }));
130
131 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetFunctionConfiguration(req); };
132 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(5, 60, std::move(acceptors), operation, "WaitUntilFunctionActive");
133 return waiter.Wait(request);
134 }
135
142 "FunctionUpdatedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("Successful"),
143 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
144 if (!outcome.IsSuccess()) return false;
145 const auto& result = outcome.GetResult();
146 return Model::LastUpdateStatusMapper::GetNameForLastUpdateStatus(result.GetLastUpdateStatus()) == expected.get<Aws::String>();
147 }));
149 "FunctionUpdatedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("Failed"),
150 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
151 if (!outcome.IsSuccess()) return false;
152 const auto& result = outcome.GetResult();
153 return Model::LastUpdateStatusMapper::GetNameForLastUpdateStatus(result.GetLastUpdateStatus()) == expected.get<Aws::String>();
154 }));
156 "FunctionUpdatedWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("InProgress"),
157 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
158 if (!outcome.IsSuccess()) return false;
159 const auto& result = outcome.GetResult();
160 return Model::LastUpdateStatusMapper::GetNameForLastUpdateStatus(result.GetLastUpdateStatus()) == expected.get<Aws::String>();
161 }));
162
163 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetFunctionConfiguration(req); };
164 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(5, 60, std::move(acceptors), operation, "WaitUntilFunctionUpdated");
165 return waiter.Wait(request);
166 }
167
174 "PublishedVersionActiveWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("Active"),
175 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
176 if (!outcome.IsSuccess()) return false;
177 const auto& result = outcome.GetResult();
178 return Model::StateMapper::GetNameForState(result.GetState()) == expected.get<Aws::String>();
179 }));
181 "PublishedVersionActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("Failed"),
182 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
183 if (!outcome.IsSuccess()) return false;
184 const auto& result = outcome.GetResult();
185 return Model::StateMapper::GetNameForState(result.GetState()) == expected.get<Aws::String>();
186 }));
188 "PublishedVersionActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("Pending"),
189 [](const Model::GetFunctionConfigurationOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
190 if (!outcome.IsSuccess()) return false;
191 const auto& result = outcome.GetResult();
192 return Model::StateMapper::GetNameForState(result.GetState()) == expected.get<Aws::String>();
193 }));
194
195 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetFunctionConfiguration(req); };
196 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(5, 312, std::move(acceptors), operation, "WaitUntilPublishedVersionActive");
197 return waiter.Wait(request);
198 }
199};
200} // namespace Lambda
201} // namespace Aws
Aws::Utils::WaiterOutcome< Model::GetFunctionOutcome > WaitUntilFunctionUpdatedV2(const Model::GetFunctionRequest &request)
Aws::Utils::WaiterOutcome< Model::GetFunctionOutcome > WaitUntilFunctionExists(const Model::GetFunctionRequest &request)
Aws::Utils::WaiterOutcome< Model::GetFunctionOutcome > WaitUntilFunctionActiveV2(const Model::GetFunctionRequest &request)
Aws::Utils::WaiterOutcome< Model::GetFunctionConfigurationOutcome > WaitUntilFunctionActive(const Model::GetFunctionConfigurationRequest &request)
Aws::Utils::WaiterOutcome< Model::GetFunctionConfigurationOutcome > WaitUntilFunctionUpdated(const Model::GetFunctionConfigurationRequest &request)
Aws::Utils::WaiterOutcome< Model::GetFunctionConfigurationOutcome > WaitUntilPublishedVersionActive(const Model::GetFunctionConfigurationRequest &request)
bool IsSuccess() const
const R & GetResult() const
WaiterOutcome< OutcomeT > Wait(const RequestT &request)
AWS_LAMBDA_API Aws::String GetNameForLastUpdateStatus(LastUpdateStatus value)
AWS_LAMBDA_API Aws::String GetNameForState(State value)
Aws::Utils::Outcome< GetFunctionResult, LambdaError > GetFunctionOutcome
Aws::Utils::Outcome< GetFunctionConfigurationResult, LambdaError > GetFunctionConfigurationOutcome
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