From c28709433e4db62bf0dca9e721879e896e23269b Mon Sep 17 00:00:00 2001 From: Dan Lapid Date: Thu, 10 Oct 2024 11:33:52 +0000 Subject: [PATCH] Simplify PromiseWorkerInterface a little bit. --- src/workerd/io/worker-interface.c++ | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/workerd/io/worker-interface.c++ b/src/workerd/io/worker-interface.c++ index 62ea5bc6c81..7f055ea678f 100644 --- a/src/workerd/io/worker-interface.c++ +++ b/src/workerd/io/worker-interface.c++ @@ -14,7 +14,7 @@ namespace workerd { namespace { // A WorkerInterface that delays requests until some promise resolves, then forwards them to the // interface the promise resolved to. -class PromisedWorkerInterface final: public kj::Refcounted, public WorkerInterface { +class PromisedWorkerInterface final: public WorkerInterface { public: PromisedWorkerInterface(kj::Promise> promise) : promise(promise.then([this](kj::Own result) { worker = kj::mv(result); }) @@ -26,7 +26,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); @@ -39,7 +39,7 @@ public: ConnectResponse& response, kj::HttpConnectSettings settings) override { KJ_IF_SOME(w, worker) { - co_await w.get()->connect(host, headers, connection, response, kj::mv(settings)); + co_await w->connect(host, headers, connection, response, kj::mv(settings)); } else { co_await promise; co_await KJ_ASSERT_NONNULL(worker)->connect( @@ -49,7 +49,7 @@ public: kj::Promise prewarm(kj::StringPtr url) override { KJ_IF_SOME(w, worker) { - co_return co_await w.get()->prewarm(url); + co_return co_await w->prewarm(url); } else { co_await promise; co_return co_await KJ_ASSERT_NONNULL(worker)->prewarm(url); @@ -58,7 +58,7 @@ public: kj::Promise runScheduled(kj::Date scheduledTime, kj::StringPtr cron) override { KJ_IF_SOME(w, worker) { - co_return co_await w.get()->runScheduled(scheduledTime, cron); + co_return co_await w->runScheduled(scheduledTime, cron); } else { co_await promise; co_return co_await KJ_ASSERT_NONNULL(worker)->runScheduled(scheduledTime, cron); @@ -67,7 +67,7 @@ public: kj::Promise runAlarm(kj::Date scheduledTime, uint32_t retryCount) override { KJ_IF_SOME(w, worker) { - co_return co_await w.get()->runAlarm(scheduledTime, retryCount); + co_return co_await w->runAlarm(scheduledTime, retryCount); } else { co_await promise; co_return co_await KJ_ASSERT_NONNULL(worker)->runAlarm(scheduledTime, retryCount); @@ -76,7 +76,7 @@ public: kj::Promise customEvent(kj::Own event) override { KJ_IF_SOME(w, worker) { - co_return co_await w.get()->customEvent(kj::mv(event)); + co_return co_await w->customEvent(kj::mv(event)); } else { co_await promise; co_return co_await KJ_ASSERT_NONNULL(worker)->customEvent(kj::mv(event)); @@ -90,7 +90,7 @@ private: } // namespace kj::Own newPromisedWorkerInterface(kj::Promise> promise) { - return kj::refcounted(kj::mv(promise)); + return kj::heap(kj::mv(promise)); } kj::Own asHttpClient(kj::Own workerInterface) {