From d25d4ad2026f11226a7b187cbca70d8679a16855 Mon Sep 17 00:00:00 2001 From: Yagiz Nizipli Date: Wed, 9 Oct 2024 11:03:09 -0400 Subject: [PATCH] move thenables to coroutines on worker-interface --- src/workerd/io/worker-interface.c++ | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/src/workerd/io/worker-interface.c++ b/src/workerd/io/worker-interface.c++ index 8c8a6fde4e6..cd435052920 100644 --- a/src/workerd/io/worker-interface.c++ +++ b/src/workerd/io/worker-interface.c++ @@ -28,7 +28,7 @@ public: kj::AsyncInputStream& requestBody, Response& response) override { KJ_IF_SOME(w, worker) { - co_await w.get()->request(method, url, headers, requestBody, response); + co_await w->request(method, url, headers, requestBody, response); } else { co_await promise; co_await KJ_ASSERT_NONNULL(worker)->request(method, url, headers, requestBody, response); @@ -392,11 +392,9 @@ kj::Promise RpcWorkerInterface::runScheduled( auto req = dispatcher.runScheduledRequest(); req.setScheduledTime((scheduledTime - kj::UNIX_EPOCH) / kj::SECONDS); req.setCron(cron); - return req.send().then([](auto resp) { - auto respResult = resp.getResult(); - return WorkerInterface::ScheduledResult{ - .retry = respResult.getRetry(), .outcome = respResult.getOutcome()}; - }); + auto resp = co_await req.send(); + auto respResult = resp.getResult(); + co_return ScheduledResult{.retry = respResult.getRetry(), .outcome = respResult.getOutcome()}; } kj::Promise RpcWorkerInterface::runAlarm( @@ -404,12 +402,11 @@ kj::Promise RpcWorkerInterface::runAlarm( auto req = dispatcher.runAlarmRequest(); req.setScheduledTime((scheduledTime - kj::UNIX_EPOCH) / kj::MILLISECONDS); req.setRetryCount(retryCount); - return req.send().then([](auto resp) { - auto respResult = resp.getResult(); - return WorkerInterface::AlarmResult{.retry = respResult.getRetry(), - .retryCountsAgainstLimit = respResult.getRetryCountsAgainstLimit(), - .outcome = respResult.getOutcome()}; - }); + auto resp = co_await req.send(); + auto respResult = resp.getResult(); + co_return AlarmResult{.retry = respResult.getRetry(), + .retryCountsAgainstLimit = respResult.getRetryCountsAgainstLimit(), + .outcome = respResult.getOutcome()}; } kj::Promise RpcWorkerInterface::customEvent(