Index: extensions/renderer/service_worker_request_sender.cc |
diff --git a/extensions/renderer/service_worker_request_sender.cc b/extensions/renderer/service_worker_request_sender.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..a4d089ae7f039e8e39a0ca014b2351a7e996d5b4 |
--- /dev/null |
+++ b/extensions/renderer/service_worker_request_sender.cc |
@@ -0,0 +1,33 @@ |
+// Copyright 2016 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "extensions/renderer/service_worker_request_sender.h" |
+ |
+#include "content/public/child/worker_thread.h" |
+#include "extensions/common/extension_messages.h" |
+#include "extensions/renderer/worker_thread_dispatcher.h" |
+ |
+namespace extensions { |
+ |
+ServiceWorkerRequestSender::ServiceWorkerRequestSender( |
+ WorkerThreadDispatcher* dispatcher, |
+ int embedded_worker_id) |
+ : dispatcher_(dispatcher), embedded_worker_id_(embedded_worker_id) {} |
+ |
+ServiceWorkerRequestSender::~ServiceWorkerRequestSender() {} |
+ |
+void ServiceWorkerRequestSender::SendRequest( |
+ content::RenderFrame* render_frame, |
+ bool for_io_thread, |
+ ExtensionHostMsg_Request_Params& params) { |
+ DCHECK(!render_frame && !for_io_thread); |
+ int worker_thread_id = content::WorkerThread::GetCurrentId(); |
+ DCHECK_GT(worker_thread_id, 0); |
+ params.worker_thread_id = worker_thread_id; |
+ params.embedded_worker_id = embedded_worker_id_; |
+ |
+ dispatcher_->Send(new ExtensionHostMsg_RequestWorker(params)); |
+} |
+ |
+} // namespace extensions |