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

Unified Diff: chrome/browser/predictors/resource_prefetch_predictor_tables.cc

Issue 2831233004: predictors: Add resource type to manifest. (Closed)
Patch Set: Created 3 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/predictors/resource_prefetch_predictor_tables.cc
diff --git a/chrome/browser/predictors/resource_prefetch_predictor_tables.cc b/chrome/browser/predictors/resource_prefetch_predictor_tables.cc
index 710325c29397cc661d42149b1af184cdff8f8472..061941d72ac92a3eaa07eb93c31983cc0c912029 100644
--- a/chrome/browser/predictors/resource_prefetch_predictor_tables.cc
+++ b/chrome/browser/predictors/resource_prefetch_predictor_tables.cc
@@ -310,14 +310,9 @@ void ResourcePrefetchPredictorTables::GetAllResourceDataHelper(
PrefetchData data;
std::string key;
while (StepAndInitializeProtoData(&resource_reader, &key, &data)) {
- data_map->insert(std::make_pair(key, data));
+ data_map->insert({key, data});
DCHECK_EQ(data.primary_key(), key);
}
-
- // Sort each of the resource vectors by score.
- for (auto& kv : *data_map) {
alexilin 2017/04/21 12:07:28 Resources are written to the database already sort
Benoit L 2017/04/25 08:59:21 Unless the sorting function changes, right?
alexilin 2017/04/25 13:04:25 We could return this statement back if sorting fun
Benoit L 2017/04/25 15:12:39 Acknowledged.
- SortResources(&(kv.second));
- }
}
void ResourcePrefetchPredictorTables::GetAllRedirectDataHelper(
@@ -331,7 +326,7 @@ void ResourcePrefetchPredictorTables::GetAllRedirectDataHelper(
RedirectData data;
std::string key;
while (StepAndInitializeProtoData(&redirect_reader, &key, &data)) {
- data_map->insert(std::make_pair(key, data));
+ data_map->insert({key, data});
DCHECK_EQ(data.primary_key(), key);
}
}
@@ -345,7 +340,7 @@ void ResourcePrefetchPredictorTables::GetAllManifestDataHelper(
precache::PrecacheManifest data;
std::string key;
while (StepAndInitializeProtoData(&manifest_reader, &key, &data)) {
- manifest_map->insert(std::make_pair(key, data));
+ manifest_map->insert({key, data});
}
}
@@ -447,6 +442,31 @@ float ResourcePrefetchPredictorTables::ComputeResourceScore(
data.average_position();
}
+// static
+float ResourcePrefetchPredictorTables::ComputePrecacheResourceScore(
+ const precache::PrecacheResource& resource) {
+ int type_multiplier;
+ switch (resource.type()) {
Benoit L 2017/04/25 08:59:21 Can we make that consistent with the other scoring
alexilin 2017/04/25 17:37:05 Done.
+ case precache::PrecacheResource::RESOURCE_TYPE_FONT:
+ type_multiplier = 4;
+ break;
+ case precache::PrecacheResource::RESOURCE_TYPE_STYLESHEET:
+ type_multiplier = 3;
+ break;
+ case precache::PrecacheResource::RESOURCE_TYPE_SCRIPT:
+ type_multiplier = 2;
+ break;
+ case precache::PrecacheResource::RESOURCE_TYPE_IMAGE:
+ type_multiplier = 1;
+ break;
+ default:
+ type_multiplier = 0;
+ }
+
+ return type_multiplier * 10 + resource.weight_ratio();
+}
+
+// static
float ResourcePrefetchPredictorTables::ComputeOriginScore(
const OriginStat& origin) {
// The ranking is done by considering, in this order:

Powered by Google App Engine
This is Rietveld 408576698