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

Unified Diff: content/browser/appcache/appcache_backend_impl.h

Issue 2501343003: PlzNavigate: AppCache support. (Closed)
Patch Set: Add DCHECKs for PlzNavigate and fix a double Release problem which caused one unit_test to fail wit… Created 4 years, 1 month 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/browser/appcache/appcache_backend_impl.h
diff --git a/content/browser/appcache/appcache_backend_impl.h b/content/browser/appcache/appcache_backend_impl.h
index e7f9b84eb288987c13a37f758f7c0273c6a08d51..1d92f47a5c518d4afbca62690eaf4e8994d25890 100644
--- a/content/browser/appcache/appcache_backend_impl.h
+++ b/content/browser/appcache/appcache_backend_impl.h
@@ -22,10 +22,15 @@ class CONTENT_EXPORT AppCacheBackendImpl {
void Initialize(AppCacheServiceImpl* service,
AppCacheFrontend* frontend,
- int process_id);
+ int process_id,
+ int frame_id);
+ void set_process_id(int pid) { process_id_ = pid; }
int process_id() const { return process_id_; }
+ void set_frame_id(int id) { frame_id_ = id; }
+ int frame_id() const { return frame_id_; }
+
// Methods to support the AppCacheBackend interface. A false return
// value indicates an invalid host_id and that no action was taken
// by the backend impl.
@@ -66,10 +71,24 @@ class CONTENT_EXPORT AppCacheBackendImpl {
std::unique_ptr<AppCacheHost> TransferHostOut(int host_id);
void TransferHostIn(int new_host_id, std::unique_ptr<AppCacheHost> host);
+ // PlzNavigate:
+ // When a navigation commits, we need to switch the AppCacheFrontend and
+ // possibly the AppCacheServiceImpl instance we are registered with.
michaeln 2016/11/22 00:17:27 under what circumstances would we need to swap the
ananta 2016/11/23 04:05:14 IsolatedApps is one case. Need to look into why th
+ void FrameNavigationCommitted(AppCacheFrontend* frontend,
+ AppCacheServiceImpl* service);
+
+ // PlzNavigate:
+ // Copies hosts registered with the AppCacheBackend passed in the |backend|
+ // parameter.
+ void CopyExistingHosts(AppCacheBackendImpl* backend);
+
private:
AppCacheServiceImpl* service_;
AppCacheFrontend* frontend_;
int process_id_;
+ // For PlzNavigate, this contains the frame id when the navigation is
+ // initiated.
+ int frame_id_;
HostMap hosts_;
DISALLOW_COPY_AND_ASSIGN(AppCacheBackendImpl);

Powered by Google App Engine
This is Rietveld 408576698