| Index: chrome/browser/metrics/metrics_service.h
|
| ===================================================================
|
| --- chrome/browser/metrics/metrics_service.h (revision 274045)
|
| +++ chrome/browser/metrics/metrics_service.h (working copy)
|
| @@ -32,7 +32,6 @@
|
| #include "components/metrics/metrics_provider.h"
|
| #include "components/metrics/metrics_service_observer.h"
|
| #include "components/variations/active_field_trials.h"
|
| -#include "net/url_request/url_fetcher_delegate.h"
|
|
|
| class GoogleUpdateMetricsProviderWin;
|
| class MetricsReportingScheduler;
|
| @@ -55,6 +54,7 @@
|
| }
|
|
|
| namespace metrics {
|
| +class MetricsLogUploader;
|
| class MetricsServiceClient;
|
| class MetricsStateManager;
|
| }
|
| @@ -89,8 +89,7 @@
|
|
|
| class MetricsService
|
| : public base::HistogramFlattener,
|
| - public chrome_browser_metrics::TrackingSynchronizerObserver,
|
| - public net::URLFetcherDelegate {
|
| + public chrome_browser_metrics::TrackingSynchronizerObserver {
|
| public:
|
| // The execution phase of the browser.
|
| enum ExecutionPhase {
|
| @@ -357,15 +356,9 @@
|
| // Uploads the currently staged log (which must be non-null).
|
| void SendStagedLog();
|
|
|
| - // Prepared the staged log to be passed to the server. Upon return,
|
| - // current_fetch_ should be reset with its upload data set to a compressed
|
| - // copy of the staged log.
|
| - void PrepareFetchWithStagedLog();
|
| + // Called after transmission completes (either successfully or with failure).
|
| + void OnLogUploadComplete(int response_code);
|
|
|
| - // Implementation of net::URLFetcherDelegate. Called after transmission
|
| - // completes (either successfully or with failure).
|
| - virtual void OnURLFetchComplete(const net::URLFetcher* source) OVERRIDE;
|
| -
|
| // Reads, increments and then sets the specified integer preference.
|
| void IncrementPrefValue(const char* path);
|
|
|
| @@ -453,9 +446,12 @@
|
| // initial stability log may be sent before this.
|
| scoped_ptr<MetricsLog> initial_metrics_log_;
|
|
|
| - // The outstanding transmission appears as a URL Fetch operation.
|
| - scoped_ptr<net::URLFetcher> current_fetch_;
|
| + // Instance of the helper class for uploading logs.
|
| + scoped_ptr<metrics::MetricsLogUploader> log_uploader_;
|
|
|
| + // Whether there is a current log upload in progress.
|
| + bool log_upload_in_progress_;
|
| +
|
| // Whether the MetricsService object has received any notifications since
|
| // the last time a transmission was sent.
|
| bool idle_since_last_transmission_;
|
| @@ -474,10 +470,6 @@
|
| // The scheduler for determining when uploads should happen.
|
| scoped_ptr<MetricsReportingScheduler> scheduler_;
|
|
|
| - // Indicates that an asynchronous reporting step is running.
|
| - // This is used only for debugging.
|
| - bool waiting_for_asynchronous_reporting_step_;
|
| -
|
| // Stores the time of the first call to |GetUptimes()|.
|
| base::TimeTicks first_updated_time_;
|
|
|
|
|