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

Side by Side Diff: chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer.h

Issue 2478903002: DRP metrics observer stop observing after hidden (Closed)
Patch Set: Created 4 years, 1 month 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_DATA_REDUCTION_PROXY_METRICS_ OBSERVER_H_ 5 #ifndef CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_DATA_REDUCTION_PROXY_METRICS_ OBSERVER_H_
6 #define CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_DATA_REDUCTION_PROXY_METRICS_ OBSERVER_H_ 6 #define CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_DATA_REDUCTION_PROXY_METRICS_ OBSERVER_H_
7 7
8 #include <memory> 8 #include <memory>
9 9
10 #include "base/macros.h" 10 #include "base/macros.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 // Observer responsible for recording core page load metrics releveant to 46 // Observer responsible for recording core page load metrics releveant to
47 // DataReductionProxy. 47 // DataReductionProxy.
48 class DataReductionProxyMetricsObserver 48 class DataReductionProxyMetricsObserver
49 : public page_load_metrics::PageLoadMetricsObserver { 49 : public page_load_metrics::PageLoadMetricsObserver {
50 public: 50 public:
51 DataReductionProxyMetricsObserver(); 51 DataReductionProxyMetricsObserver();
52 ~DataReductionProxyMetricsObserver() override; 52 ~DataReductionProxyMetricsObserver() override;
53 53
54 // page_load_metrics::PageLoadMetricsObserver: 54 // page_load_metrics::PageLoadMetricsObserver:
55 ObservePolicy OnCommit(content::NavigationHandle* navigation_handle) override; 55 ObservePolicy OnCommit(content::NavigationHandle* navigation_handle) override;
56 ObservePolicy OnHidden(
57 const page_load_metrics::PageLoadTiming& timing,
58 const page_load_metrics::PageLoadExtraInfo& info) override;
56 void OnComplete(const page_load_metrics::PageLoadTiming& timing, 59 void OnComplete(const page_load_metrics::PageLoadTiming& timing,
57 const page_load_metrics::PageLoadExtraInfo& info) override; 60 const page_load_metrics::PageLoadExtraInfo& info) override;
58 void OnDomContentLoadedEventStart( 61 void OnDomContentLoadedEventStart(
59 const page_load_metrics::PageLoadTiming& timing, 62 const page_load_metrics::PageLoadTiming& timing,
60 const page_load_metrics::PageLoadExtraInfo& info) override; 63 const page_load_metrics::PageLoadExtraInfo& info) override;
61 void OnLoadEventStart( 64 void OnLoadEventStart(
62 const page_load_metrics::PageLoadTiming& timing, 65 const page_load_metrics::PageLoadTiming& timing,
63 const page_load_metrics::PageLoadExtraInfo& info) override; 66 const page_load_metrics::PageLoadExtraInfo& info) override;
64 void OnFirstLayout(const page_load_metrics::PageLoadTiming& timing, 67 void OnFirstLayout(const page_load_metrics::PageLoadTiming& timing,
65 const page_load_metrics::PageLoadExtraInfo& info) override; 68 const page_load_metrics::PageLoadExtraInfo& info) override;
(...skipping 10 matching lines...) Expand all
76 const page_load_metrics::PageLoadExtraInfo& info) override; 79 const page_load_metrics::PageLoadExtraInfo& info) override;
77 void OnFirstMeaningfulPaint( 80 void OnFirstMeaningfulPaint(
78 const page_load_metrics::PageLoadTiming& timing, 81 const page_load_metrics::PageLoadTiming& timing,
79 const page_load_metrics::PageLoadExtraInfo& info) override; 82 const page_load_metrics::PageLoadExtraInfo& info) override;
80 void OnParseStart(const page_load_metrics::PageLoadTiming& timing, 83 void OnParseStart(const page_load_metrics::PageLoadTiming& timing,
81 const page_load_metrics::PageLoadExtraInfo& info) override; 84 const page_load_metrics::PageLoadExtraInfo& info) override;
82 void OnParseStop(const page_load_metrics::PageLoadTiming& timing, 85 void OnParseStop(const page_load_metrics::PageLoadTiming& timing,
83 const page_load_metrics::PageLoadExtraInfo& info) override; 86 const page_load_metrics::PageLoadExtraInfo& info) override;
84 87
85 private: 88 private:
89 // Sends the page load information to the pingback client.
90 void SendPingback(const page_load_metrics::PageLoadTiming& timing,
91 const page_load_metrics::PageLoadExtraInfo& info);
92
86 // Gets the default DataReductionProxyPingbackClient. Overridden in testing. 93 // Gets the default DataReductionProxyPingbackClient. Overridden in testing.
87 virtual DataReductionProxyPingbackClient* GetPingbackClient() const; 94 virtual DataReductionProxyPingbackClient* GetPingbackClient() const;
88 95
89 // Data related to this navigation. 96 // Data related to this navigation.
90 std::unique_ptr<DataReductionProxyData> data_; 97 std::unique_ptr<DataReductionProxyData> data_;
91 98
92 // The browser context this navigation is operating in. 99 // The browser context this navigation is operating in.
93 content::BrowserContext* browser_context_; 100 content::BrowserContext* browser_context_;
94 101
95 DISALLOW_COPY_AND_ASSIGN(DataReductionProxyMetricsObserver); 102 DISALLOW_COPY_AND_ASSIGN(DataReductionProxyMetricsObserver);
96 }; 103 };
97 104
98 } // namespace data_reduction_proxy 105 } // namespace data_reduction_proxy
99 106
100 #endif // CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_DATA_REDUCTION_PROXY_METRI CS_OBSERVER_H_ 107 #endif // CHROME_BROWSER_PAGE_LOAD_METRICS_OBSERVERS_DATA_REDUCTION_PROXY_METRI CS_OBSERVER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698