Index: chrome/browser/predictors/resource_prefetch_predictor.cc |
diff --git a/chrome/browser/predictors/resource_prefetch_predictor.cc b/chrome/browser/predictors/resource_prefetch_predictor.cc |
index 497a359675382ad9b1b6580fae3483bbed7f5ca5..e23ec85eb75c090a17287d13af49c3687a8cb464 100644 |
--- a/chrome/browser/predictors/resource_prefetch_predictor.cc |
+++ b/chrome/browser/predictors/resource_prefetch_predictor.cc |
@@ -373,6 +373,30 @@ ResourcePrefetchPredictor::URLRequestSummary::URLRequestSummary( |
ResourcePrefetchPredictor::URLRequestSummary::~URLRequestSummary() { |
} |
+// static |
+bool ResourcePrefetchPredictor::URLRequestSummary::SummarizeResponse( |
+ const net::URLRequest* request, |
+ URLRequestSummary* summary) { |
+ const content::ResourceRequestInfo* info = |
+ content::ResourceRequestInfo::ForRequest(request); |
+ if (!info) |
+ return false; |
+ |
+ int render_process_id, render_frame_id; |
+ if (!info->GetAssociatedRenderFrame(&render_process_id, &render_frame_id)) |
+ return false; |
+ |
+ summary->navigation_id = NavigationID(render_process_id, render_frame_id, |
+ request->first_party_for_cookies()); |
+ summary->navigation_id.creation_time = request->creation_time(); |
+ summary->resource_url = request->original_url(); |
+ summary->resource_type = info->GetResourceType(); |
+ summary->priority = request->priority(); |
+ request->GetMimeType(&summary->mime_type); |
+ summary->was_cached = request->was_cached(); |
+ return true; |
+} |
+ |
ResourcePrefetchPredictor::Result::Result( |
PrefetchKeyType i_key_type, |
ResourcePrefetcher::RequestVector* i_requests) |