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

Unified Diff: chrome/browser/prerender/prerender_tracker.cc

Issue 141163002: Make PrerenderTracker's resource_throttle_io_thread_map_ use RenderFrame IDs instead of RenderView … (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: simplify code Created 6 years, 11 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: chrome/browser/prerender/prerender_tracker.cc
===================================================================
--- chrome/browser/prerender/prerender_tracker.cc (revision 245386)
+++ chrome/browser/prerender/prerender_tracker.cc (working copy)
@@ -7,6 +7,7 @@
#include "base/bind.h"
#include "base/logging.h"
#include "chrome/browser/browser_process.h"
+#include "chrome/browser/prerender/prerender_contents.h"
#include "chrome/browser/prerender/prerender_manager.h"
#include "chrome/browser/prerender/prerender_pending_swap_throttle.h"
#include "chrome/browser/prerender/prerender_resource_throttle.h"
@@ -36,50 +37,6 @@
PrerenderTracker::~PrerenderTracker() {
}
-void PrerenderTracker::OnPrerenderStart(
- PrerenderContents* prerender_contents) {
- DCHECK(CalledOnValidThread());
- int child_id, route_id;
- bool got_child_id = prerender_contents->GetChildId(&child_id);
- DCHECK(got_child_id);
- bool got_route_id = prerender_contents->GetRouteId(&route_id);
- DCHECK(got_route_id);
-
- ChildRouteIdPair child_route_id_pair(child_id, route_id);
-
- BrowserThread::PostTask(
- BrowserThread::IO, FROM_HERE,
- base::Bind(&PrerenderTracker::AddPrerenderOnIOThread,
- base::Unretained(this), child_route_id_pair));
-}
-
-void PrerenderTracker::OnPrerenderStop(
- PrerenderContents* prerender_contents) {
- DCHECK(CalledOnValidThread());
- int child_id, route_id;
- bool got_child_id = prerender_contents->GetChildId(&child_id);
- DCHECK(got_child_id);
- bool got_route_id = prerender_contents->GetRouteId(&route_id);
- DCHECK(got_route_id);
-
- ChildRouteIdPair child_route_id_pair(child_id, route_id);
-
- DCHECK_LT(prerender_contents->final_status(), FINAL_STATUS_MAX);
- BrowserThread::PostTask(
- BrowserThread::IO, FROM_HERE,
- base::Bind(&PrerenderTracker::RemovePrerenderOnIOThread,
- base::Unretained(this), child_route_id_pair,
- prerender_contents->final_status()));
-}
-
-bool PrerenderTracker::IsPrerenderingOnIOThread(int child_id,
- int route_id) const {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
-
- ChildRouteIdPair child_route_id_pair(child_id, route_id);
- return resource_throttle_io_thread_map_.count(child_route_id_pair) > 0;
-}
-
bool PrerenderTracker::IsPendingSwapRequestOnIOThread(
int render_process_id, int render_frame_id, const GURL& url) const {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
@@ -91,19 +48,6 @@
return (it != pending_swap_throttle_map_.end() && it->second.url == url);
}
-void PrerenderTracker::AddResourceThrottleOnIOThread(
- int child_id,
- int route_id,
- const base::WeakPtr<PrerenderResourceThrottle>& throttle) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
-
- ChildRouteIdPair child_route_id_pair(child_id, route_id);
- ResourceThrottleMap::iterator resource_throttle_map_it =
- resource_throttle_io_thread_map_.find(child_route_id_pair);
- DCHECK(resource_throttle_map_it != resource_throttle_io_thread_map_.end());
- resource_throttle_map_it->second.push_back(throttle);
-}
-
void PrerenderTracker::AddPendingSwapThrottleOnIOThread(
int render_process_id,
int render_frame_id,
@@ -122,40 +66,6 @@
it->second.throttle = throttle;
}
-void PrerenderTracker::AddPrerenderOnIOThread(
- const ChildRouteIdPair& child_route_id_pair) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- DCHECK(!IsPrerenderingOnIOThread(child_route_id_pair.first,
- child_route_id_pair.second));
-
- resource_throttle_io_thread_map_.insert(
- std::make_pair(child_route_id_pair, ResourceThrottleList()));
-}
-
-void PrerenderTracker::RemovePrerenderOnIOThread(
- const ChildRouteIdPair& child_route_id_pair,
- FinalStatus final_status) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- DCHECK(IsPrerenderingOnIOThread(child_route_id_pair.first,
- child_route_id_pair.second));
-
- // Cancel or resume all throttled resources.
- ResourceThrottleMap::iterator resource_throttle_map_it =
- resource_throttle_io_thread_map_.find(child_route_id_pair);
- DCHECK(resource_throttle_map_it != resource_throttle_io_thread_map_.end());
- ResourceThrottleList& throttles = resource_throttle_map_it->second;
- for (size_t i = 0; i < throttles.size(); i++) {
- if (throttles[i]) {
- if (final_status == FINAL_STATUS_USED) {
- throttles[i]->Resume();
- } else {
- throttles[i]->Cancel();
- }
- }
- }
- resource_throttle_io_thread_map_.erase(resource_throttle_map_it);
-}
-
void PrerenderTracker::AddPrerenderPendingSwapOnIOThread(
const ChildRouteIdPair& render_frame_route_id_pair,
const GURL& url) {

Powered by Google App Engine
This is Rietveld 408576698