Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(506)

Unified Diff: content/child/service_worker/service_worker_dispatcher.cc

Issue 26631006: add error IPC handling to dispatcher (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/child/service_worker/service_worker_dispatcher.h ('k') | content/common/service_worker_messages.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/child/service_worker/service_worker_dispatcher.cc
diff --git a/content/child/service_worker/service_worker_dispatcher.cc b/content/child/service_worker/service_worker_dispatcher.cc
index c2c75b410c98688a0e5182e9c00be20dd98d009a..0658bae6ad93e089a6bcfbd7aa0cccfbcd7c8ddc 100644
--- a/content/child/service_worker/service_worker_dispatcher.cc
+++ b/content/child/service_worker/service_worker_dispatcher.cc
@@ -36,10 +36,11 @@ ServiceWorkerDispatcher::~ServiceWorkerDispatcher() {
void ServiceWorkerDispatcher::OnMessageReceived(const IPC::Message& msg) {
bool handled = true;
IPC_BEGIN_MESSAGE_MAP(ServiceWorkerDispatcher, msg)
- IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ServiceWorkerRegistered,
- OnServiceWorkerRegistered)
+ IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ServiceWorkerRegistered, OnRegistered)
IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ServiceWorkerUnregistered,
- OnServiceWorkerUnregistered)
+ OnUnregistered)
+ IPC_MESSAGE_HANDLER(ServiceWorkerMsg_ServiceWorkerRegistrationError,
+ OnRegistrationError)
kinuko 2013/10/10 07:57:22 Any particular reason we use a separate IPC for er
michaeln 2013/10/11 01:29:12 Either way does work. I was expecting register/reg
IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP()
DCHECK(handled) << "Unhandled message:" << msg.type();
@@ -90,10 +91,9 @@ ServiceWorkerDispatcher* ServiceWorkerDispatcher::ThreadSpecificInstance(
return dispatcher;
}
-void ServiceWorkerDispatcher::OnServiceWorkerRegistered(
- int32 thread_id,
- int32 request_id,
- int32 service_worker_id) {
+void ServiceWorkerDispatcher::OnRegistered(int32 thread_id,
+ int32 request_id,
+ int32 service_worker_id) {
WebServiceWorkerProvider::WebServiceWorkerCallbacks* callbacks =
pending_callbacks_.Lookup(request_id);
DCHECK(callbacks);
@@ -112,10 +112,9 @@ void ServiceWorkerDispatcher::OnServiceWorkerRegistered(
pending_callbacks_.Remove(request_id);
}
-void ServiceWorkerDispatcher::OnServiceWorkerUnregistered(
- int32 thread_id,
- int32 request_id,
- int32 service_worker_id) {
+void ServiceWorkerDispatcher::OnUnregistered(int32 thread_id,
+ int32 request_id,
+ int32 service_worker_id) {
WebServiceWorkerProvider::WebServiceWorkerCallbacks* callbacks =
pending_callbacks_.Lookup(request_id);
DCHECK(callbacks);
@@ -129,6 +128,18 @@ void ServiceWorkerDispatcher::OnServiceWorkerUnregistered(
pending_callbacks_.Remove(request_id);
}
+void ServiceWorkerDispatcher::OnRegistrationError(int32 thread_id,
+ int32 request_id) {
+ WebServiceWorkerProvider::WebServiceWorkerCallbacks* callbacks =
+ pending_callbacks_.Lookup(request_id);
+ DCHECK(callbacks);
+ if (!callbacks)
+ return;
+
+ callbacks->onError(NULL);
kinuko 2013/10/10 07:57:22 Looks like this method expects WebSW ptr type for
+ pending_callbacks_.Remove(request_id);
+}
+
void ServiceWorkerDispatcher::OnWorkerRunLoopStopped() { delete this; }
} // namespace content
« no previous file with comments | « content/child/service_worker/service_worker_dispatcher.h ('k') | content/common/service_worker_messages.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698