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

Side by Side Diff: content/browser/service_worker/service_worker_dispatcher_host.cc

Issue 1632113004: ServiceWorker: Add initial implementation of ExtendableMessageEvent behind a flag (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/service_worker/service_worker_dispatcher_host.h" 5 #include "content/browser/service_worker/service_worker_dispatcher_host.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/macros.h" 10 #include "base/macros.h"
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_GetRegistrations, 176 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_GetRegistrations,
177 OnGetRegistrations) 177 OnGetRegistrations)
178 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_GetRegistrationForReady, 178 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_GetRegistrationForReady,
179 OnGetRegistrationForReady) 179 OnGetRegistrationForReady)
180 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_ProviderCreated, 180 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_ProviderCreated,
181 OnProviderCreated) 181 OnProviderCreated)
182 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_ProviderDestroyed, 182 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_ProviderDestroyed,
183 OnProviderDestroyed) 183 OnProviderDestroyed)
184 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_SetVersionId, 184 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_SetVersionId,
185 OnSetHostedVersionId) 185 OnSetHostedVersionId)
186 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_DeprecatedPostMessageToWorker,
187 OnDeprecatedPostMessageToWorker)
186 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_PostMessageToWorker, 188 IPC_MESSAGE_HANDLER(ServiceWorkerHostMsg_PostMessageToWorker,
187 OnPostMessageToWorker) 189 OnPostMessageToWorker)
188 IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerReadyForInspection, 190 IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerReadyForInspection,
189 OnWorkerReadyForInspection) 191 OnWorkerReadyForInspection)
190 IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerScriptLoaded, 192 IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerScriptLoaded,
191 OnWorkerScriptLoaded) 193 OnWorkerScriptLoaded)
192 IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerThreadStarted, 194 IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerThreadStarted,
193 OnWorkerThreadStarted) 195 OnWorkerThreadStarted)
194 IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerScriptLoadFailed, 196 IPC_MESSAGE_HANDLER(EmbeddedWorkerHostMsg_WorkerScriptLoadFailed,
195 OnWorkerScriptLoadFailed) 197 OnWorkerScriptLoadFailed)
(...skipping 513 matching lines...) Expand 10 before | Expand all | Expand 10 after
709 "ServiceWorkerDispatcherHost::OnPostMessageToWorker"); 711 "ServiceWorkerDispatcherHost::OnPostMessageToWorker");
710 if (!GetContext()) 712 if (!GetContext())
711 return; 713 return;
712 714
713 ServiceWorkerHandle* handle = handles_.Lookup(handle_id); 715 ServiceWorkerHandle* handle = handles_.Lookup(handle_id);
714 if (!handle) { 716 if (!handle) {
715 bad_message::ReceivedBadMessage(this, bad_message::SWDH_POST_MESSAGE); 717 bad_message::ReceivedBadMessage(this, bad_message::SWDH_POST_MESSAGE);
716 return; 718 return;
717 } 719 }
718 720
721 handle->version()->DispatchExtendableMessageEvent(
722 message, sent_message_ports,
723 base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
724 }
725
726 void ServiceWorkerDispatcherHost::OnDeprecatedPostMessageToWorker(
727 int handle_id,
728 const base::string16& message,
729 const std::vector<TransferredMessagePort>& sent_message_ports) {
730 TRACE_EVENT0("ServiceWorker",
731 "ServiceWorkerDispatcherHost::OnDeprecatedPostMessageToWorker");
732 if (!GetContext())
733 return;
734
735 ServiceWorkerHandle* handle = handles_.Lookup(handle_id);
736 if (!handle) {
737 bad_message::ReceivedBadMessage(this, bad_message::SWDH_POST_MESSAGE);
738 return;
739 }
740
719 handle->version()->DispatchMessageEvent( 741 handle->version()->DispatchMessageEvent(
720 message, sent_message_ports, 742 message, sent_message_ports,
721 base::Bind(&ServiceWorkerUtils::NoOpStatusCallback)); 743 base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
722 } 744 }
723 745
724 void ServiceWorkerDispatcherHost::OnProviderCreated( 746 void ServiceWorkerDispatcherHost::OnProviderCreated(
725 int provider_id, 747 int provider_id,
726 int route_id, 748 int route_id,
727 ServiceWorkerProviderType provider_type) { 749 ServiceWorkerProviderType provider_type) {
728 // TODO(pkasting): Remove ScopedTracker below once crbug.com/477117 is fixed. 750 // TODO(pkasting): Remove ScopedTracker below once crbug.com/477117 is fixed.
(...skipping 600 matching lines...) Expand 10 before | Expand all | Expand 10 after
1329 if (!handle) { 1351 if (!handle) {
1330 bad_message::ReceivedBadMessage(this, 1352 bad_message::ReceivedBadMessage(this,
1331 bad_message::SWDH_TERMINATE_BAD_HANDLE); 1353 bad_message::SWDH_TERMINATE_BAD_HANDLE);
1332 return; 1354 return;
1333 } 1355 }
1334 handle->version()->StopWorker( 1356 handle->version()->StopWorker(
1335 base::Bind(&ServiceWorkerUtils::NoOpStatusCallback)); 1357 base::Bind(&ServiceWorkerUtils::NoOpStatusCallback));
1336 } 1358 }
1337 1359
1338 } // namespace content 1360 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698