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

Unified Diff: chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.h

Issue 2896713003: Create LoadingDataCollector class and have observers rely on it instead of ResourcePrefetchPredictor (Closed)
Patch Set: Rebase Created 3 years, 6 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/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.h
diff --git a/chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.h b/chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.h
similarity index 69%
rename from chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.h
rename to chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.h
index 3278fbb7f959afd6b5f57016808fa3934e80367e..6965217b89e8609461a89013cd45851a640e39ff 100644
--- a/chrome/browser/page_load_metrics/observers/resource_prefetch_predictor_page_load_metrics_observer.h
+++ b/chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer.h
@@ -2,9 +2,10 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_RESOURCE_PREFETCH_PREDICTOR_PAGE_LOAD_METRICS_OBSERVER_H_
-#define CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_RESOURCE_PREFETCH_PREDICTOR_PAGE_LOAD_METRICS_OBSERVER_H_
+#ifndef CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_LOADING_PREDICTOR_PAGE_LOAD_METRICS_OBSERVER_H_
+#define CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_LOADING_PREDICTOR_PAGE_LOAD_METRICS_OBSERVER_H_
+#include <memory>
#include "chrome/browser/page_load_metrics/page_load_metrics_observer.h"
namespace content {
@@ -13,6 +14,7 @@ class WebContents;
namespace predictors {
class ResourcePrefetchPredictor;
+class LoadingDataCollector;
}
namespace internal {
@@ -24,21 +26,22 @@ extern const char kHistogramResourcePrefetchPredictorFirstMeaningfulPaint[];
// Observer responsible for recording page load metrics relevant to
// ResourcePrefetchPredictor.
-class ResourcePrefetchPredictorPageLoadMetricsObserver
+class LoadingPredictorPageLoadMetricsObserver
: public page_load_metrics::PageLoadMetricsObserver {
public:
- // Returns a ResourcePrefetchPredictorPageLoadMetricsObserver, or nullptr if
- // it is not needed.
- static std::unique_ptr<ResourcePrefetchPredictorPageLoadMetricsObserver>
+ // Returns a LoadingPredictorPageLoadMetricsObserver, or nullptr if it is not
+ // needed.
+ static std::unique_ptr<LoadingPredictorPageLoadMetricsObserver>
CreateIfNeeded(content::WebContents* web_contents);
// Public for testing. Normally one should use CreateIfNeeded. Predictor must
// outlive this observer.
- explicit ResourcePrefetchPredictorPageLoadMetricsObserver(
+ explicit LoadingPredictorPageLoadMetricsObserver(
predictors::ResourcePrefetchPredictor* predictor,
+ predictors::LoadingDataCollector* collector,
content::WebContents* web_contents);
- ~ResourcePrefetchPredictorPageLoadMetricsObserver() override;
+ ~LoadingPredictorPageLoadMetricsObserver() override;
// page_load_metrics::PageLoadMetricsObserver:
ObservePolicy OnStart(content::NavigationHandle* navigation_handle,
@@ -56,10 +59,11 @@ class ResourcePrefetchPredictorPageLoadMetricsObserver
private:
predictors::ResourcePrefetchPredictor* predictor_;
+ predictors::LoadingDataCollector* collector_;
content::WebContents* web_contents_;
bool record_histograms_;
- DISALLOW_COPY_AND_ASSIGN(ResourcePrefetchPredictorPageLoadMetricsObserver);
+ DISALLOW_COPY_AND_ASSIGN(LoadingPredictorPageLoadMetricsObserver);
};
-#endif // CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_RESOURCE_PREFETCH_PREDICTOR_PAGE_LOAD_METRICS_OBSERVER_H_
+#endif // CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_LOADING_PREDICTOR_PAGE_LOAD_METRICS_OBSERVER_H_

Powered by Google App Engine
This is Rietveld 408576698