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

Side by Side Diff: chrome/browser/prerender/prerender_manager.cc

Issue 1548133002: Switch to standard integer types in chrome/browser/, part 3 of 4. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/prerender/prerender_manager.h" 5 #include "chrome/browser/prerender/prerender_manager.h"
6 6
7 #include <stddef.h>
8
7 #include <algorithm> 9 #include <algorithm>
8 #include <functional> 10 #include <functional>
9 #include <string> 11 #include <string>
10 #include <vector> 12 #include <vector>
11 13
12 #include "base/bind.h" 14 #include "base/bind.h"
13 #include "base/bind_helpers.h" 15 #include "base/bind_helpers.h"
14 #include "base/location.h" 16 #include "base/location.h"
15 #include "base/logging.h" 17 #include "base/logging.h"
18 #include "base/macros.h"
16 #include "base/metrics/histogram.h" 19 #include "base/metrics/histogram.h"
17 #include "base/single_thread_task_runner.h" 20 #include "base/single_thread_task_runner.h"
18 #include "base/thread_task_runner_handle.h" 21 #include "base/thread_task_runner_handle.h"
19 #include "base/time/time.h" 22 #include "base/time/time.h"
20 #include "base/timer/elapsed_timer.h" 23 #include "base/timer/elapsed_timer.h"
21 #include "base/values.h" 24 #include "base/values.h"
22 #include "chrome/browser/browser_process.h" 25 #include "chrome/browser/browser_process.h"
23 #include "chrome/browser/chrome_notification_types.h" 26 #include "chrome/browser/chrome_notification_types.h"
24 #include "chrome/browser/net/prediction_options.h" 27 #include "chrome/browser/net/prediction_options.h"
25 #include "chrome/browser/prerender/prerender_contents.h" 28 #include "chrome/browser/prerender/prerender_contents.h"
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 on_close_web_contents_deleters_.clear(); 245 on_close_web_contents_deleters_.clear();
243 profile_ = NULL; 246 profile_ = NULL;
244 247
245 DCHECK(active_prerenders_.empty()); 248 DCHECK(active_prerenders_.empty());
246 } 249 }
247 250
248 PrerenderHandle* PrerenderManager::AddPrerenderFromLinkRelPrerender( 251 PrerenderHandle* PrerenderManager::AddPrerenderFromLinkRelPrerender(
249 int process_id, 252 int process_id,
250 int route_id, 253 int route_id,
251 const GURL& url, 254 const GURL& url,
252 const uint32 rel_types, 255 const uint32_t rel_types,
253 const content::Referrer& referrer, 256 const content::Referrer& referrer,
254 const gfx::Size& size) { 257 const gfx::Size& size) {
255 Origin origin = rel_types & PrerenderRelTypePrerender ? 258 Origin origin = rel_types & PrerenderRelTypePrerender ?
256 ORIGIN_LINK_REL_PRERENDER_CROSSDOMAIN : 259 ORIGIN_LINK_REL_PRERENDER_CROSSDOMAIN :
257 ORIGIN_LINK_REL_NEXT; 260 ORIGIN_LINK_REL_NEXT;
258 SessionStorageNamespace* session_storage_namespace = NULL; 261 SessionStorageNamespace* session_storage_namespace = NULL;
259 // Unit tests pass in a process_id == -1. 262 // Unit tests pass in a process_id == -1.
260 if (process_id != -1) { 263 if (process_id != -1) {
261 RenderViewHost* source_render_view_host = 264 RenderViewHost* source_render_view_host =
262 RenderViewHost::FromID(process_id, route_id); 265 RenderViewHost::FromID(process_id, route_id);
(...skipping 974 matching lines...) Expand 10 before | Expand all | Expand 10 after
1237 1240
1238 PrerenderContents* prerender_contents = GetPrerenderContents(tab); 1241 PrerenderContents* prerender_contents = GetPrerenderContents(tab);
1239 if (!prerender_contents) 1242 if (!prerender_contents)
1240 return; 1243 return;
1241 1244
1242 prerender_contents->Destroy(prerender::FINAL_STATUS_CREATING_AUDIO_STREAM); 1245 prerender_contents->Destroy(prerender::FINAL_STATUS_CREATING_AUDIO_STREAM);
1243 } 1246 }
1244 1247
1245 void PrerenderManager::RecordNetworkBytes(Origin origin, 1248 void PrerenderManager::RecordNetworkBytes(Origin origin,
1246 bool used, 1249 bool used,
1247 int64 prerender_bytes) { 1250 int64_t prerender_bytes) {
1248 if (!ActuallyPrerendering()) 1251 if (!ActuallyPrerendering())
1249 return; 1252 return;
1250 int64 recent_profile_bytes = 1253 int64_t recent_profile_bytes =
1251 profile_network_bytes_ - last_recorded_profile_network_bytes_; 1254 profile_network_bytes_ - last_recorded_profile_network_bytes_;
1252 last_recorded_profile_network_bytes_ = profile_network_bytes_; 1255 last_recorded_profile_network_bytes_ = profile_network_bytes_;
1253 DCHECK_GE(recent_profile_bytes, 0); 1256 DCHECK_GE(recent_profile_bytes, 0);
1254 histograms_->RecordNetworkBytes( 1257 histograms_->RecordNetworkBytes(
1255 origin, used, prerender_bytes, recent_profile_bytes); 1258 origin, used, prerender_bytes, recent_profile_bytes);
1256 } 1259 }
1257 1260
1258 bool PrerenderManager::IsEnabled() const { 1261 bool PrerenderManager::IsEnabled() const {
1259 DCHECK(CalledOnValidThread()); 1262 DCHECK(CalledOnValidThread());
1260 1263
1261 return chrome_browser_net::CanPrefetchAndPrerenderUI(profile_->GetPrefs()); 1264 return chrome_browser_net::CanPrefetchAndPrerenderUI(profile_->GetPrefs());
1262 } 1265 }
1263 1266
1264 void PrerenderManager::AddProfileNetworkBytesIfEnabled(int64 bytes) { 1267 void PrerenderManager::AddProfileNetworkBytesIfEnabled(int64_t bytes) {
1265 DCHECK_GE(bytes, 0); 1268 DCHECK_GE(bytes, 0);
1266 if (IsEnabled() && ActuallyPrerendering()) 1269 if (IsEnabled() && ActuallyPrerendering())
1267 profile_network_bytes_ += bytes; 1270 profile_network_bytes_ += bytes;
1268 } 1271 }
1269 1272
1270 void PrerenderManager::AddPrerenderProcessHost( 1273 void PrerenderManager::AddPrerenderProcessHost(
1271 content::RenderProcessHost* process_host) { 1274 content::RenderProcessHost* process_host) {
1272 DCHECK_CURRENTLY_ON(BrowserThread::UI); 1275 DCHECK_CURRENTLY_ON(BrowserThread::UI);
1273 DCHECK(prerender_process_hosts_.find(process_host) == 1276 DCHECK(prerender_process_hosts_.find(process_host) ==
1274 prerender_process_hosts_.end()); 1277 prerender_process_hosts_.end());
(...skipping 11 matching lines...) Expand all
1286 } 1289 }
1287 1290
1288 void PrerenderManager::RenderProcessHostDestroyed( 1291 void PrerenderManager::RenderProcessHostDestroyed(
1289 content::RenderProcessHost* host) { 1292 content::RenderProcessHost* host) {
1290 DCHECK_CURRENTLY_ON(BrowserThread::UI); 1293 DCHECK_CURRENTLY_ON(BrowserThread::UI);
1291 size_t erased = prerender_process_hosts_.erase(host); 1294 size_t erased = prerender_process_hosts_.erase(host);
1292 DCHECK_EQ(1u, erased); 1295 DCHECK_EQ(1u, erased);
1293 } 1296 }
1294 1297
1295 } // namespace prerender 1298 } // namespace prerender
OLDNEW
« no previous file with comments | « chrome/browser/prerender/prerender_manager.h ('k') | chrome/browser/prerender/prerender_message_filter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698