| Index: chrome/browser/predictors/resource_prefetch_predictor.h
|
| diff --git a/chrome/browser/predictors/resource_prefetch_predictor.h b/chrome/browser/predictors/resource_prefetch_predictor.h
|
| index 2af4be9e829da7e1e714545027667493b7ffbab3..25514ab542773e8c4b720d0267fb1cb6c91a42a2 100644
|
| --- a/chrome/browser/predictors/resource_prefetch_predictor.h
|
| +++ b/chrome/browser/predictors/resource_prefetch_predictor.h
|
| @@ -47,6 +47,18 @@ constexpr char kResourcePrefetchPredictorCountHistogram[] =
|
| "ResourcePrefetchPredictor.LearningCount";
|
| constexpr char kResourcePrefetchPredictorPrefetchingDurationHistogram[] =
|
| "ResourcePrefetchPredictor.PrefetchingDuration";
|
| +constexpr char kResourcePrefetchPredictorPrefetchMissesCountCached[] =
|
| + "ResourcePrefetchPredictor.PrefetchMissesCount.Cached";
|
| +constexpr char kResourcePrefetchPredictorPrefetchMissesCountNotCached[] =
|
| + "ResourcePrefetchPredictor.PrefetchMissesCount.NotCached";
|
| +constexpr char kResourcePrefetchPredictorPrefetchHitsCountCached[] =
|
| + "ResourcePrefetchPredictor.PrefetchHitsCount.Cached";
|
| +constexpr char kResourcePrefetchPredictorPrefetchHitsCountNotCached[] =
|
| + "ResourcePrefetchPredictor.PrefetchHitsCount.NotCached";
|
| +constexpr char kResourcePrefetchPredictorPrefetchHitsSize[] =
|
| + "ResourcePrefetchPredictor.PrefetchHitsSizeKB";
|
| +constexpr char kResourcePrefetchPredictorPrefetchMissesSize[] =
|
| + "ResourcePrefetchPredictor.PrefetchMissesSizeKB";
|
| } // namespace internal
|
|
|
| class TestObserver;
|
| @@ -174,7 +186,9 @@ class ResourcePrefetchPredictor
|
|
|
| // Called when ResourcePrefetcher is finished, i.e. there is nothing pending
|
| // in flight.
|
| - void OnPrefetchingFinished(const GURL& main_frame_url);
|
| + void OnPrefetchingFinished(
|
| + const GURL& main_frame_url,
|
| + std::unique_ptr<ResourcePrefetcher::PrefetcherStats> stats);
|
|
|
| // Returns true if prefetching data exists for the |main_frame_url|.
|
| virtual bool IsUrlPrefetchable(const GURL& main_frame_url);
|
| @@ -222,7 +236,6 @@ class ResourcePrefetchPredictor
|
| INITIALIZING = 1,
|
| INITIALIZED = 2
|
| };
|
| -
|
| typedef ResourcePrefetchPredictorTables::PrefetchDataMap PrefetchDataMap;
|
| typedef ResourcePrefetchPredictorTables::RedirectDataMap RedirectDataMap;
|
|
|
| @@ -288,8 +301,7 @@ class ResourcePrefetchPredictor
|
| // database has been read.
|
| void OnHistoryAndCacheLoaded();
|
|
|
| - // Removes data for navigations where the onload never fired. Will cleanup
|
| - // inflight_navigations_ and inflight_prefetches_.
|
| + // Cleanup inflight_navigations_, inflight_prefetches_, and prefetcher_stats_.
|
| void CleanupAbandonedNavigations(const NavigationID& navigation_id);
|
|
|
| // Deletes all URLs from the predictor database, the caches and removes all
|
| @@ -373,6 +385,9 @@ class ResourcePrefetchPredictor
|
| std::map<GURL, base::TimeTicks> inflight_prefetches_;
|
| NavigationMap inflight_navigations_;
|
|
|
| + std::map<GURL, std::unique_ptr<ResourcePrefetcher::PrefetcherStats>>
|
| + prefetcher_stats_;
|
| +
|
| ScopedObserver<history::HistoryService, history::HistoryServiceObserver>
|
| history_service_observer_;
|
|
|
|
|