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

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

Issue 2433273003: service worker: Plumb NavigationPreloadManager.enable/disable to browser-side (Closed)
Patch Set: comments Created 4 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
Index: content/child/service_worker/service_worker_dispatcher.h
diff --git a/content/child/service_worker/service_worker_dispatcher.h b/content/child/service_worker/service_worker_dispatcher.h
index 4793971805569f564b5614fc41af600d8283793a..ccafedf9ea5d1297ca9709ef20b9377f31ecfc3c 100644
--- a/content/child/service_worker/service_worker_dispatcher.h
+++ b/content/child/service_worker/service_worker_dispatcher.h
@@ -67,6 +67,8 @@ class CONTENT_EXPORT ServiceWorkerDispatcher : public WorkerThread::Observer {
typedef blink::WebServiceWorkerProvider::
WebServiceWorkerGetRegistrationForReadyCallbacks
WebServiceWorkerGetRegistrationForReadyCallbacks;
+ using WebEnableNavigationPreloadCallbacks =
+ blink::WebServiceWorkerRegistration::WebEnableNavigationPreloadCallbacks;
ServiceWorkerDispatcher(
ThreadSafeSender* thread_safe_sender,
@@ -103,6 +105,13 @@ class CONTENT_EXPORT ServiceWorkerDispatcher : public WorkerThread::Observer {
int provider_id,
WebServiceWorkerGetRegistrationForReadyCallbacks* callbacks);
+ // Corresponds to NavigationPreloadManager.enable/disable.
+ void EnableNavigationPreload(
+ int provider_id,
+ int64_t registration_id,
+ bool enable,
+ std::unique_ptr<WebEnableNavigationPreloadCallbacks> callbacks);
+
// Called when a new provider context for a document is created. Usually
// this happens when a new document is being loaded, and is called much
// earlier than AddScriptClient.
@@ -160,6 +169,8 @@ class CONTENT_EXPORT ServiceWorkerDispatcher : public WorkerThread::Observer {
IDMapOwnPointer> GetRegistrationsCallbackMap;
typedef IDMap<WebServiceWorkerGetRegistrationForReadyCallbacks,
IDMapOwnPointer> GetRegistrationForReadyCallbackMap;
+ using EnableNavigationPreloadCallbackMap =
+ IDMap<WebEnableNavigationPreloadCallbacks, IDMapOwnPointer>;
typedef std::map<int, blink::WebServiceWorkerProviderClient*>
ProviderClientMap;
@@ -204,6 +215,7 @@ class CONTENT_EXPORT ServiceWorkerDispatcher : public WorkerThread::Observer {
int request_id,
const ServiceWorkerRegistrationObjectInfo& info,
const ServiceWorkerVersionAttributes& attrs);
+ void OnDidEnableNavigationPreload(int thread_id, int request_id);
void OnRegistrationError(int thread_id,
int request_id,
blink::WebServiceWorkerError::ErrorType error_type,
@@ -226,6 +238,11 @@ class CONTENT_EXPORT ServiceWorkerDispatcher : public WorkerThread::Observer {
int request_id,
blink::WebServiceWorkerError::ErrorType error_type,
const base::string16& message);
+ void OnEnableNavigationPreloadError(
+ int thread_id,
+ int request_id,
+ blink::WebServiceWorkerError::ErrorType error_type,
+ const std::string& message);
void OnServiceWorkerStateChanged(int thread_id,
int handle_id,
blink::WebServiceWorkerState state);
@@ -265,6 +282,7 @@ class CONTENT_EXPORT ServiceWorkerDispatcher : public WorkerThread::Observer {
GetRegistrationCallbackMap pending_get_registration_callbacks_;
GetRegistrationsCallbackMap pending_get_registrations_callbacks_;
GetRegistrationForReadyCallbackMap get_for_ready_callbacks_;
+ EnableNavigationPreloadCallbackMap enable_navigation_preload_callbacks_;
ProviderClientMap provider_clients_;
ProviderContextMap provider_contexts_;

Powered by Google App Engine
This is Rietveld 408576698