Chromium Code Reviews| Index: chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer.h |
| diff --git a/chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer.h b/chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer.h |
| index 58e8d87861dccc8e9159af34fcad3797443fa0d7..0d9079d13f3fc70f715c1afab32ed0218d819e28 100644 |
| --- a/chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer.h |
| +++ b/chrome/browser/page_load_metrics/observers/resource_tracking_page_load_metrics_observer.h |
| @@ -8,13 +8,19 @@ |
| #include <stdint.h> |
| #include "chrome/browser/page_load_metrics/page_load_metrics_observer.h" |
| +#include "content/public/common/resource_type.h" |
| + |
| +namespace offline_pages { |
| +class ResourceTrackerObserver; |
| +} |
| namespace page_load_metrics { |
| class ResourceTrackingPageLoadMetricsObserver |
| : public page_load_metrics::PageLoadMetricsObserver { |
| public: |
| - ResourceTrackingPageLoadMetricsObserver(); |
| + ResourceTrackingPageLoadMetricsObserver( |
| + offline_pages::ResourceTrackerObserver* request_coordinator); |
| ~ResourceTrackingPageLoadMetricsObserver() override; |
| // Called by the PageLoadMetrics framework when we start a new request, so we |
| @@ -29,19 +35,23 @@ class ResourceTrackingPageLoadMetricsObserver |
| void OnLoadedResource( |
| const ExtraRequestCompleteInfo& extra_request_complete_info) override; |
| - // For the specified type, get the count of requests started and completed. |
| - // TODO(petewil) Note that type is not used yet, code to use it is coming |
| - // soon. |
| - void GetCountsForTypeForTesting(const content::ResourceType type, |
| - int64_t* started_count, |
| - int64_t* completed_count); |
| + // Called when the page load commits, we return STOP_OBSERVING if the page is |
| + // not part of an offlining attempt. |
| + ObservePolicy OnCommit(content::NavigationHandle* navigation_handle) override; |
| private: |
| + void InformObservers(const content::ResourceType type, |
|
Dmitry Titov
2017/05/18 02:28:10
Since there is only one 'observer', perhaps it's m
Bryan McQuade
2017/05/23 05:00:01
Agree - given that the containing class is also it
Pete Williamson
2017/05/24 01:01:50
Renamed this function to InformClient.
We can saf
|
| + int64_t started_count, |
| + int64_t completed_count); |
| + |
| // TODO(petewil): Some way to keep track of what we've seen |
| // TODO(petewil): Some way to inform our keeper of aggregate results when they |
| // change. |
| int64_t started_count_; |
| int64_t completed_count_; |
| + // Unowned pointer to the ResourceTrackerObserver for this profile, it must be |
| + // kept valid by the caller for the lifetime of the PageLoadMetricsObserver. |
| + offline_pages::ResourceTrackerObserver* request_coordinator_; |
| }; |
| } // namespace page_load_metrics |