AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
MediaConnectWaiter.h
1
6#pragma once
7#include <aws/core/utils/Waiter.h>
8#include <aws/core/utils/memory/AWSMemory.h>
9#include <aws/mediaconnect/MediaConnectClient.h>
10#include <aws/mediaconnect/model/DescribeFlowRequest.h>
11#include <aws/mediaconnect/model/DescribeFlowResult.h>
12#include <aws/mediaconnect/model/GetRouterInputRequest.h>
13#include <aws/mediaconnect/model/GetRouterInputResult.h>
14#include <aws/mediaconnect/model/GetRouterOutputRequest.h>
15#include <aws/mediaconnect/model/GetRouterOutputResult.h>
16#include <aws/mediaconnect/model/RouterInputState.h>
17#include <aws/mediaconnect/model/RouterOutputRoutedState.h>
18#include <aws/mediaconnect/model/RouterOutputState.h>
19#include <aws/mediaconnect/model/Status.h>
20
21#include <algorithm>
22
23namespace Aws {
24namespace MediaConnect {
25
26template <typename DerivedClient = MediaConnectClient>
28 public:
30 using OutcomeT = Model::DescribeFlowOutcome;
31 using RequestT = Model::DescribeFlowRequest;
34 "FlowActiveWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("ACTIVE"),
35 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
36 if (!outcome.IsSuccess()) return false;
37 const auto& result = outcome.GetResult();
38 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
39 }));
41 "FlowActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("STARTING"),
42 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
43 if (!outcome.IsSuccess()) return false;
44 const auto& result = outcome.GetResult();
45 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
46 }));
48 "FlowActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("UPDATING"),
49 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
50 if (!outcome.IsSuccess()) return false;
51 const auto& result = outcome.GetResult();
52 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
53 }));
54 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FlowActiveWaiter", Aws::Utils::WaiterState::RETRY,
55 Aws::String("InternalServerErrorException")));
56 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FlowActiveWaiter", Aws::Utils::WaiterState::RETRY,
57 Aws::String("ServiceUnavailableException")));
59 "FlowActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("STANDBY"),
60 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
61 if (!outcome.IsSuccess()) return false;
62 const auto& result = outcome.GetResult();
63 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
64 }));
66 "FlowActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
67 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
68 if (!outcome.IsSuccess()) return false;
69 const auto& result = outcome.GetResult();
70 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
71 }));
72
73 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeFlow(req); };
74 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilFlowActive");
75 return waiter.Wait(request);
76 }
77
79 using OutcomeT = Model::DescribeFlowOutcome;
80 using RequestT = Model::DescribeFlowRequest;
83 "FlowStandbyWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("STANDBY"),
84 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
85 if (!outcome.IsSuccess()) return false;
86 const auto& result = outcome.GetResult();
87 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
88 }));
90 "FlowStandbyWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("STOPPING"),
91 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
92 if (!outcome.IsSuccess()) return false;
93 const auto& result = outcome.GetResult();
94 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
95 }));
96 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FlowStandbyWaiter", Aws::Utils::WaiterState::RETRY,
97 Aws::String("InternalServerErrorException")));
98 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FlowStandbyWaiter", Aws::Utils::WaiterState::RETRY,
99 Aws::String("ServiceUnavailableException")));
101 "FlowStandbyWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
102 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
103 if (!outcome.IsSuccess()) return false;
104 const auto& result = outcome.GetResult();
105 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
106 }));
107
108 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeFlow(req); };
109 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilFlowStandby");
110 return waiter.Wait(request);
111 }
112
114 using OutcomeT = Model::DescribeFlowOutcome;
115 using RequestT = Model::DescribeFlowRequest;
117 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FlowDeletedWaiter", Aws::Utils::WaiterState::SUCCESS,
118 Aws::String("NotFoundException")));
120 "FlowDeletedWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("DELETING"),
121 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
122 if (!outcome.IsSuccess()) return false;
123 const auto& result = outcome.GetResult();
124 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
125 }));
126 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FlowDeletedWaiter", Aws::Utils::WaiterState::RETRY,
127 Aws::String("InternalServerErrorException")));
128 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("FlowDeletedWaiter", Aws::Utils::WaiterState::RETRY,
129 Aws::String("ServiceUnavailableException")));
131 "FlowDeletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
132 [](const Model::DescribeFlowOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
133 if (!outcome.IsSuccess()) return false;
134 const auto& result = outcome.GetResult();
135 return Model::StatusMapper::GetNameForStatus(result.GetFlow().GetStatus()) == expected.get<Aws::String>();
136 }));
137
138 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->DescribeFlow(req); };
139 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilFlowDeleted");
140 return waiter.Wait(request);
141 }
142
144 using OutcomeT = Model::GetRouterInputOutcome;
145 using RequestT = Model::GetRouterInputRequest;
148 "InputActiveWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("ACTIVE"),
149 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
150 if (!outcome.IsSuccess()) return false;
151 const auto& result = outcome.GetResult();
152 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
153 expected.get<Aws::String>();
154 }));
156 "InputActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("STARTING"),
157 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
158 if (!outcome.IsSuccess()) return false;
159 const auto& result = outcome.GetResult();
160 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
161 expected.get<Aws::String>();
162 }));
164 "InputActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("UPDATING"),
165 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
166 if (!outcome.IsSuccess()) return false;
167 const auto& result = outcome.GetResult();
168 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
169 expected.get<Aws::String>();
170 }));
172 "InputActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("MIGRATING"),
173 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
174 if (!outcome.IsSuccess()) return false;
175 const auto& result = outcome.GetResult();
176 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
177 expected.get<Aws::String>();
178 }));
179 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("InputActiveWaiter", Aws::Utils::WaiterState::RETRY,
180 Aws::String("InternalServerErrorException")));
181 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("InputActiveWaiter", Aws::Utils::WaiterState::RETRY,
182 Aws::String("ServiceUnavailableException")));
184 "InputActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
185 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
186 if (!outcome.IsSuccess()) return false;
187 const auto& result = outcome.GetResult();
188 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
189 expected.get<Aws::String>();
190 }));
191
192 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetRouterInput(req); };
193 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilInputActive");
194 return waiter.Wait(request);
195 }
196
198 using OutcomeT = Model::GetRouterInputOutcome;
199 using RequestT = Model::GetRouterInputRequest;
202 "InputStandbyWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("STANDBY"),
203 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
204 if (!outcome.IsSuccess()) return false;
205 const auto& result = outcome.GetResult();
206 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
207 expected.get<Aws::String>();
208 }));
210 "InputStandbyWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("STOPPING"),
211 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
212 if (!outcome.IsSuccess()) return false;
213 const auto& result = outcome.GetResult();
214 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
215 expected.get<Aws::String>();
216 }));
217 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("InputStandbyWaiter", Aws::Utils::WaiterState::RETRY,
218 Aws::String("InternalServerErrorException")));
219 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("InputStandbyWaiter", Aws::Utils::WaiterState::RETRY,
220 Aws::String("ServiceUnavailableException")));
222 "InputStandbyWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
223 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
224 if (!outcome.IsSuccess()) return false;
225 const auto& result = outcome.GetResult();
226 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
227 expected.get<Aws::String>();
228 }));
229
230 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetRouterInput(req); };
231 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilInputStandby");
232 return waiter.Wait(request);
233 }
234
236 using OutcomeT = Model::GetRouterInputOutcome;
237 using RequestT = Model::GetRouterInputRequest;
240 "InputDeletedWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("DELETING"),
241 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
242 if (!outcome.IsSuccess()) return false;
243 const auto& result = outcome.GetResult();
244 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
245 expected.get<Aws::String>();
246 }));
247 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("InputDeletedWaiter", Aws::Utils::WaiterState::RETRY,
248 Aws::String("InternalServerErrorException")));
249 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("InputDeletedWaiter", Aws::Utils::WaiterState::RETRY,
250 Aws::String("ServiceUnavailableException")));
252 "InputDeletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
253 [](const Model::GetRouterInputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
254 if (!outcome.IsSuccess()) return false;
255 const auto& result = outcome.GetResult();
256 return Model::RouterInputStateMapper::GetNameForRouterInputState(result.GetRouterInput().GetState()) ==
257 expected.get<Aws::String>();
258 }));
259 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("InputDeletedWaiter", Aws::Utils::WaiterState::SUCCESS,
260 Aws::String("NotFoundException")));
261
262 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetRouterInput(req); };
263 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilInputDeleted");
264 return waiter.Wait(request);
265 }
266
268 using OutcomeT = Model::GetRouterOutputOutcome;
269 using RequestT = Model::GetRouterOutputRequest;
272 "OutputActiveWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("ACTIVE"),
273 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
274 if (!outcome.IsSuccess()) return false;
275 const auto& result = outcome.GetResult();
276 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
277 expected.get<Aws::String>();
278 }));
280 "OutputActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("STARTING"),
281 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
282 if (!outcome.IsSuccess()) return false;
283 const auto& result = outcome.GetResult();
284 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
285 expected.get<Aws::String>();
286 }));
288 "OutputActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("UPDATING"),
289 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
290 if (!outcome.IsSuccess()) return false;
291 const auto& result = outcome.GetResult();
292 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
293 expected.get<Aws::String>();
294 }));
296 "OutputActiveWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("MIGRATING"),
297 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
298 if (!outcome.IsSuccess()) return false;
299 const auto& result = outcome.GetResult();
300 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
301 expected.get<Aws::String>();
302 }));
303 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputActiveWaiter", Aws::Utils::WaiterState::RETRY,
304 Aws::String("InternalServerErrorException")));
305 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputActiveWaiter", Aws::Utils::WaiterState::RETRY,
306 Aws::String("ServiceUnavailableException")));
308 "OutputActiveWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
309 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
310 if (!outcome.IsSuccess()) return false;
311 const auto& result = outcome.GetResult();
312 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
313 expected.get<Aws::String>();
314 }));
315
316 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetRouterOutput(req); };
317 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilOutputActive");
318 return waiter.Wait(request);
319 }
320
322 using OutcomeT = Model::GetRouterOutputOutcome;
323 using RequestT = Model::GetRouterOutputRequest;
326 "OutputDeletedWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("DELETING"),
327 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
328 if (!outcome.IsSuccess()) return false;
329 const auto& result = outcome.GetResult();
330 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
331 expected.get<Aws::String>();
332 }));
333 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputDeletedWaiter", Aws::Utils::WaiterState::RETRY,
334 Aws::String("InternalServerErrorException")));
335 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputDeletedWaiter", Aws::Utils::WaiterState::RETRY,
336 Aws::String("ServiceUnavailableException")));
338 "OutputDeletedWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
339 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
340 if (!outcome.IsSuccess()) return false;
341 const auto& result = outcome.GetResult();
342 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
343 expected.get<Aws::String>();
344 }));
345 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputDeletedWaiter", Aws::Utils::WaiterState::SUCCESS,
346 Aws::String("NotFoundException")));
347
348 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetRouterOutput(req); };
349 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilOutputDeleted");
350 return waiter.Wait(request);
351 }
352
354 using OutcomeT = Model::GetRouterOutputOutcome;
355 using RequestT = Model::GetRouterOutputRequest;
358 "OutputRoutedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("ROUTED"),
359 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
360 if (!outcome.IsSuccess()) return false;
361 const auto& result = outcome.GetResult();
362 return Model::RouterOutputRoutedStateMapper::GetNameForRouterOutputRoutedState(result.GetRouterOutput().GetRoutedState()) ==
363 expected.get<Aws::String>();
364 }));
366 "OutputRoutedWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("ROUTING"),
367 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
368 if (!outcome.IsSuccess()) return false;
369 const auto& result = outcome.GetResult();
370 return Model::RouterOutputRoutedStateMapper::GetNameForRouterOutputRoutedState(result.GetRouterOutput().GetRoutedState()) ==
371 expected.get<Aws::String>();
372 }));
373 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputRoutedWaiter", Aws::Utils::WaiterState::RETRY,
374 Aws::String("InternalServerErrorException")));
375 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputRoutedWaiter", Aws::Utils::WaiterState::RETRY,
376 Aws::String("ServiceUnavailableException")));
377
378 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetRouterOutput(req); };
379 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilOutputRouted");
380 return waiter.Wait(request);
381 }
382
384 using OutcomeT = Model::GetRouterOutputOutcome;
385 using RequestT = Model::GetRouterOutputRequest;
388 "OutputStandbyWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("STANDBY"),
389 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
390 if (!outcome.IsSuccess()) return false;
391 const auto& result = outcome.GetResult();
392 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
393 expected.get<Aws::String>();
394 }));
396 "OutputStandbyWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("STOPPING"),
397 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
398 if (!outcome.IsSuccess()) return false;
399 const auto& result = outcome.GetResult();
400 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
401 expected.get<Aws::String>();
402 }));
403 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputStandbyWaiter", Aws::Utils::WaiterState::RETRY,
404 Aws::String("InternalServerErrorException")));
405 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputStandbyWaiter", Aws::Utils::WaiterState::RETRY,
406 Aws::String("ServiceUnavailableException")));
408 "OutputStandbyWaiter", Aws::Utils::WaiterState::FAILURE, Aws::String("ERROR"),
409 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
410 if (!outcome.IsSuccess()) return false;
411 const auto& result = outcome.GetResult();
412 return Model::RouterOutputStateMapper::GetNameForRouterOutputState(result.GetRouterOutput().GetState()) ==
413 expected.get<Aws::String>();
414 }));
415
416 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetRouterOutput(req); };
417 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilOutputStandby");
418 return waiter.Wait(request);
419 }
420
422 using OutcomeT = Model::GetRouterOutputOutcome;
423 using RequestT = Model::GetRouterOutputRequest;
426 "OutputUnroutedWaiter", Aws::Utils::WaiterState::SUCCESS, Aws::String("UNROUTED"),
427 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
428 if (!outcome.IsSuccess()) return false;
429 const auto& result = outcome.GetResult();
430 return Model::RouterOutputRoutedStateMapper::GetNameForRouterOutputRoutedState(result.GetRouterOutput().GetRoutedState()) ==
431 expected.get<Aws::String>();
432 }));
434 "OutputUnroutedWaiter", Aws::Utils::WaiterState::RETRY, Aws::String("ROUTING"),
435 [](const Model::GetRouterOutputOutcome& outcome, const Aws::Utils::ExpectedValue& expected) -> bool {
436 if (!outcome.IsSuccess()) return false;
437 const auto& result = outcome.GetResult();
438 return Model::RouterOutputRoutedStateMapper::GetNameForRouterOutputRoutedState(result.GetRouterOutput().GetRoutedState()) ==
439 expected.get<Aws::String>();
440 }));
441 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputUnroutedWaiter", Aws::Utils::WaiterState::RETRY,
442 Aws::String("InternalServerErrorException")));
443 acceptors.emplace_back(Aws::MakeUnique<Aws::Utils::ErrorAcceptor<OutcomeT>>("OutputUnroutedWaiter", Aws::Utils::WaiterState::RETRY,
444 Aws::String("ServiceUnavailableException")));
445
446 auto operation = [this](const RequestT& req) { return static_cast<DerivedClient*>(this)->GetRouterOutput(req); };
447 Aws::Utils::Waiter<RequestT, OutcomeT> waiter(3, 40, std::move(acceptors), operation, "WaitUntilOutputUnrouted");
448 return waiter.Wait(request);
449 }
450};
451} // namespace MediaConnect
452} // namespace Aws
Aws::Utils::WaiterOutcome< Model::GetRouterOutputOutcome > WaitUntilOutputActive(const Model::GetRouterOutputRequest &request)
Aws::Utils::WaiterOutcome< Model::GetRouterInputOutcome > WaitUntilInputActive(const Model::GetRouterInputRequest &request)
Aws::Utils::WaiterOutcome< Model::GetRouterInputOutcome > WaitUntilInputStandby(const Model::GetRouterInputRequest &request)
Aws::Utils::WaiterOutcome< Model::GetRouterOutputOutcome > WaitUntilOutputDeleted(const Model::GetRouterOutputRequest &request)
Aws::Utils::WaiterOutcome< Model::GetRouterInputOutcome > WaitUntilInputDeleted(const Model::GetRouterInputRequest &request)
Aws::Utils::WaiterOutcome< Model::GetRouterOutputOutcome > WaitUntilOutputRouted(const Model::GetRouterOutputRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeFlowOutcome > WaitUntilFlowDeleted(const Model::DescribeFlowRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeFlowOutcome > WaitUntilFlowStandby(const Model::DescribeFlowRequest &request)
Aws::Utils::WaiterOutcome< Model::GetRouterOutputOutcome > WaitUntilOutputUnrouted(const Model::GetRouterOutputRequest &request)
Aws::Utils::WaiterOutcome< Model::DescribeFlowOutcome > WaitUntilFlowActive(const Model::DescribeFlowRequest &request)
Aws::Utils::WaiterOutcome< Model::GetRouterOutputOutcome > WaitUntilOutputStandby(const Model::GetRouterOutputRequest &request)
bool IsSuccess() const
const R & GetResult() const
WaiterOutcome< OutcomeT > Wait(const RequestT &request)
AWS_MEDIACONNECT_API Aws::String GetNameForRouterInputState(RouterInputState value)
AWS_MEDIACONNECT_API Aws::String GetNameForRouterOutputRoutedState(RouterOutputRoutedState value)
AWS_MEDIACONNECT_API Aws::String GetNameForRouterOutputState(RouterOutputState value)
AWS_MEDIACONNECT_API Aws::String GetNameForStatus(Status value)
Aws::Utils::Outcome< GetRouterOutputResult, MediaConnectError > GetRouterOutputOutcome
Aws::Utils::Outcome< DescribeFlowResult, MediaConnectError > DescribeFlowOutcome
Aws::Utils::Outcome< GetRouterInputResult, MediaConnectError > GetRouterInputOutcome
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