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

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

Issue 10006041: Remove PrerenderResourceThrottle and related infrastructure. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More uprooting Created 8 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: chrome/browser/prerender/prerender_tracker.cc
diff --git a/chrome/browser/prerender/prerender_tracker.cc b/chrome/browser/prerender/prerender_tracker.cc
index 185e9678042d149ff0167dfd9fd1679fd7174bf5..bcd95e69993d9079d90278e15d1daba87739aba8 100644
--- a/chrome/browser/prerender/prerender_tracker.cc
+++ b/chrome/browser/prerender/prerender_tracker.cc
@@ -20,36 +20,6 @@ namespace prerender {
namespace {
-bool ShouldCancelRequest(
- int child_id,
- int route_id) {
- // Check if the RenderViewHost associated with (child_id, route_id) no
- // longer exists, or has already been swapped out for a prerendered page.
- // If that happens, then we do not want to issue the request which originated
- // from it. Otherwise, keep it going.
- // The RenderViewHost may exist for a couple of different reasons: such as
- // being an XHR from the originating page, being included as an iframe,
- // being requested as a favicon or stylesheet, and many other corner cases.
- RenderViewHost* render_view_host =
- RenderViewHost::FromID(child_id, route_id);
- if (!render_view_host)
- return true;
- PrerenderManager* prerender_manager =
- FindPrerenderManagerUsingRenderProcessId(child_id);
- return (prerender_manager &&
- prerender_manager->IsOldRenderViewHost(render_view_host));
-}
-
-void HandleDelayedRequestOnUIThread(
- int child_id,
- int route_id,
- const PrerenderTracker::CheckURLCallback& callback) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- bool should_cancel = ShouldCancelRequest(child_id, route_id);
- BrowserThread::PostTask(
- BrowserThread::IO, FROM_HERE, base::Bind(callback, !should_cancel));
-}
-
void DestroyPrerenderForRenderViewOnUI(
const base::WeakPtr<PrerenderManager>& prerender_manager_weak_ptr,
int render_process_id,
@@ -64,63 +34,8 @@ void DestroyPrerenderForRenderViewOnUI(
render_process_id, render_view_id, final_status);
}
-
-void AddURL(const GURL& url, URLCounter* counter) {
- DCHECK(counter);
- counter->AddURL(url);
-}
-
-void RemoveURLs(const std::vector<GURL>& urls, URLCounter* counter) {
- DCHECK(counter);
- counter->RemoveURLs(urls);
-}
-
} // namespace
-URLCounter::URLCounter() {
- // URLCounter is currently constructed on the UI thread but
- // accessed on the IO thread.
- DetachFromThread();
-}
-
-URLCounter::~URLCounter() {
- // URLCounter is currently destructed on the UI thread but
- // accessed on the IO thread.
- DetachFromThread();
-}
-
-bool URLCounter::MatchesURL(const GURL& url) const {
- DCHECK(CalledOnValidThread());
- URLCountMap::const_iterator it = url_count_map_.find(url);
- if (it == url_count_map_.end())
- return false;
- DCHECK(it->second > 0);
- return true;
-}
-
-void URLCounter::AddURL(const GURL& url) {
- DCHECK(CalledOnValidThread());
- URLCountMap::iterator it = url_count_map_.find(url);
- if (it == url_count_map_.end())
- url_count_map_[url] = 1;
- else
- it->second++;
-}
-
-void URLCounter::RemoveURLs(const std::vector<GURL>& urls) {
- DCHECK(CalledOnValidThread());
- for (std::vector<GURL>::const_iterator it = urls.begin();
- it != urls.end();
- ++it) {
- URLCountMap::iterator map_entry = url_count_map_.find(*it);
- DCHECK(url_count_map_.end() != map_entry);
- DCHECK(map_entry->second > 0);
- --map_entry->second;
- if (map_entry->second == 0)
- url_count_map_.erase(map_entry);
- }
-}
-
struct RenderViewInfo {
explicit RenderViewInfo(PrerenderManager* prerender_manager)
: final_status(FINAL_STATUS_MAX),
@@ -169,34 +84,6 @@ bool PrerenderTracker::TryCancelOnIOThread(
return TryCancel(child_id, route_id, final_status);
}
-bool PrerenderTracker::PotentiallyDelayRequestOnIOThread(
- const GURL& gurl,
- int process_id,
- int route_id,
- const CheckURLCallback& callback) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
- if (!url_counter_.MatchesURL(gurl))
- return false;
- BrowserThread::PostTask(
- BrowserThread::UI,
- FROM_HERE,
- base::Bind(&HandleDelayedRequestOnUIThread, process_id, route_id,
- callback));
- return true;
-}
-
-void PrerenderTracker::AddPrerenderURLOnUIThread(const GURL& url) {
- BrowserThread::PostTask(
- BrowserThread::IO, FROM_HERE, base::Bind(&AddURL, url, &url_counter_));
-}
-
-void PrerenderTracker::RemovePrerenderURLsOnUIThread(
- const std::vector<GURL>& urls) {
- BrowserThread::PostTask(
- BrowserThread::IO, FROM_HERE,
- base::Bind(&RemoveURLs, urls, &url_counter_));
-}
-
bool PrerenderTracker::GetFinalStatus(int child_id, int route_id,
FinalStatus* final_status) const {
ChildRouteIdPair child_route_id_pair(child_id, route_id);
« no previous file with comments | « chrome/browser/prerender/prerender_tracker.h ('k') | chrome/browser/prerender/prerender_tracker_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698