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

Unified Diff: content/common/service_worker/service_worker_event_dispatcher.mojom

Issue 2703343002: ServiceWorker: Use mojo's data pipe for respondWith(stream) (Closed)
Patch Set: Used TEST_P to test closing the connection first and On{Aborted,Completed} first Created 3 years, 8 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
Index: content/common/service_worker/service_worker_event_dispatcher.mojom
diff --git a/content/common/service_worker/service_worker_event_dispatcher.mojom b/content/common/service_worker/service_worker_event_dispatcher.mojom
index 2f309bb3bd2729fcd745f61b71b0c43a55cd34f3..cc016bae821bf61095bd6544a8289ad8f924c116 100644
--- a/content/common/service_worker/service_worker_event_dispatcher.mojom
+++ b/content/common/service_worker/service_worker_event_dispatcher.mojom
@@ -11,6 +11,7 @@ import "mojo/common/time.mojom";
import "third_party/WebKit/public/platform/modules/background_sync/background_sync.mojom";
import "third_party/WebKit/public/platform/modules/fetch/fetch_api_request.mojom";
import "third_party/WebKit/public/platform/modules/serviceworker/service_worker_event_status.mojom";
+import "third_party/WebKit/public/platform/modules/serviceworker/service_worker_stream_handle.mojom";
import "url/mojo/origin.mojom";
[Native]
@@ -50,6 +51,20 @@ struct ExtendableMessageEvent {
ExtendableMessageEventSource source;
};
+// Browser-side interface which is passed through DispatchFetchEvent.
falken 2017/04/10 01:21:57 In addition to "browser-side interface", the comme
shimazu 2017/04/11 01:32:57 Done.
+// The legacy IPC is used when the response body is using blob storage due to
+// the IPC's ordering issue.
falken 2017/04/10 01:21:57 It's a little hard to tell in which cases this int
shimazu 2017/04/11 01:32:57 Done.
+// TODO(shimazu): Use this interface for all responses after the blob system is
+// mojoified: https://crbug.com/611935.
+interface ServiceWorkerFetchResponseCallback {
+ OnResponse(ServiceWorkerResponse response,
+ mojo.common.mojom.Time dispatch_event_time);
+ OnResponseStream(ServiceWorkerResponse response,
+ blink.mojom.ServiceWorkerStreamHandle stream_handle,
+ mojo.common.mojom.Time dispatch_event_time);
+ OnFallback(mojo.common.mojom.Time dispatch_event_time);
+};
+
// Renderer-side interface bound to ServiceWorkerContextClient for dispatching
// events.
// Those events expecting such response
@@ -77,7 +92,8 @@ interface ServiceWorkerEventDispatcher {
// |fetch_event_id| is used internally when sending the response back to the
// browser process.
DispatchFetchEvent(int32 fetch_event_id, blink.mojom.FetchAPIRequest request,
- FetchEventPreloadHandle? preload_handle)
+ FetchEventPreloadHandle? preload_handle,
+ ServiceWorkerFetchResponseCallback response_callback)
=> (blink.mojom.ServiceWorkerEventStatus status,
mojo.common.mojom.Time dispatch_event_time);
DispatchNotificationClickEvent(string notification_id,

Powered by Google App Engine
This is Rietveld 408576698