Index: content/renderer/service_worker/service_worker_script_context.cc |
diff --git a/content/renderer/service_worker/service_worker_script_context.cc b/content/renderer/service_worker/service_worker_script_context.cc |
index bb3bf9a1b1821c566df3fa7776a540a3e301fbc8..e76bc6504021c480103ae2da11b3855f19c88e67 100644 |
--- a/content/renderer/service_worker/service_worker_script_context.cc |
+++ b/content/renderer/service_worker/service_worker_script_context.cc |
@@ -10,6 +10,8 @@ |
#include "content/common/service_worker/service_worker_messages.h" |
#include "content/renderer/service_worker/embedded_worker_context_client.h" |
#include "ipc/ipc_message.h" |
+#include "third_party/WebKit/public/platform/WebServiceWorkerRequest.h" |
+#include "third_party/WebKit/public/platform/WebURL.h" |
#include "third_party/WebKit/public/web/WebServiceWorkerContextClient.h" |
#include "third_party/WebKit/public/web/WebServiceWorkerContextProxy.h" |
@@ -121,8 +123,17 @@ void ServiceWorkerScriptContext::OnInstallEvent(int request_id, |
void ServiceWorkerScriptContext::OnFetchEvent( |
int request_id, |
const ServiceWorkerFetchRequest& request) { |
- // TODO(falken): Pass in the request. |
- proxy_->dispatchFetchEvent(request_id); |
+ blink::WebServiceWorkerRequest webRequest; |
+ webRequest.setURL(blink::WebURL(request.url)); |
+ webRequest.setMethod(blink::WebString::fromUTF8(request.method)); |
+ for (std::map<std::string, std::string>::const_iterator it = |
+ request.headers.begin(); |
+ it != request.headers.end(); |
+ ++it) { |
+ webRequest.setHeader(blink::WebString::fromUTF8(it->first), |
+ blink::WebString::fromUTF8(it->second)); |
+ } |
+ proxy_->dispatchFetchEvent(request_id, webRequest); |
} |
void ServiceWorkerScriptContext::OnSyncEvent(int request_id) { |