diff options
author | gunsch <gunsch@chromium.org> | 2014-09-11 14:05:03 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-09-11 21:15:16 +0000 |
commit | 043f36003d1d0a36be39f7eb071eeab5970d6300 (patch) | |
tree | cf8b1530a98649131561160aee9e79a45fc4601f | |
parent | 9c3546acc0e122455ba8d9f7452d25b8cd1370cd (diff) | |
download | chromium_src-043f36003d1d0a36be39f7eb071eeab5970d6300.zip chromium_src-043f36003d1d0a36be39f7eb071eeab5970d6300.tar.gz chromium_src-043f36003d1d0a36be39f7eb071eeab5970d6300.tar.bz2 |
Moves NetworkMetricsProvider to //components/metrics.
R=stevenjb@chromium.org,asvitkine@chromium.org,benchan@chromium.org
BUG=404791
Review URL: https://codereview.chromium.org/558873002
Cr-Commit-Position: refs/heads/master@{#294466}
-rw-r--r-- | chrome/browser/metrics/chrome_metrics_service_client.cc | 5 | ||||
-rw-r--r-- | chrome/chrome_browser.gypi | 6 | ||||
-rw-r--r-- | components/metrics.gypi | 7 | ||||
-rw-r--r-- | components/metrics/BUILD.gn | 6 | ||||
-rw-r--r-- | components/metrics/net/DEPS | 2 | ||||
-rw-r--r-- | components/metrics/net/network_metrics_provider.cc (renamed from chrome/browser/metrics/network_metrics_provider.cc) | 14 | ||||
-rw-r--r-- | components/metrics/net/network_metrics_provider.h (renamed from chrome/browser/metrics/network_metrics_provider.h) | 15 | ||||
-rw-r--r-- | components/metrics/net/wifi_access_point_info_provider.cc (renamed from chrome/browser/metrics/wifi_access_point_info_provider.cc) | 2 | ||||
-rw-r--r-- | components/metrics/net/wifi_access_point_info_provider.h (renamed from chrome/browser/metrics/wifi_access_point_info_provider.h) | 6 | ||||
-rw-r--r-- | components/metrics/net/wifi_access_point_info_provider_chromeos.cc (renamed from chrome/browser/metrics/wifi_access_point_info_provider_chromeos.cc) | 2 | ||||
-rw-r--r-- | components/metrics/net/wifi_access_point_info_provider_chromeos.h (renamed from chrome/browser/metrics/wifi_access_point_info_provider_chromeos.h) | 8 |
11 files changed, 44 insertions, 29 deletions
diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc index 4db6bcc..2ab41e2 100644 --- a/chrome/browser/metrics/chrome_metrics_service_client.cc +++ b/chrome/browser/metrics/chrome_metrics_service_client.cc @@ -23,7 +23,6 @@ #include "chrome/browser/google/google_brand.h" #include "chrome/browser/metrics/chrome_stability_metrics_provider.h" #include "chrome/browser/metrics/gpu_metrics_provider.h" -#include "chrome/browser/metrics/network_metrics_provider.h" #include "chrome/browser/metrics/omnibox_metrics_provider.h" #include "chrome/browser/metrics/profiler_metrics_provider.h" #include "chrome/browser/metrics/tracking_synchronizer.h" @@ -36,6 +35,7 @@ #include "chrome/common/render_messages.h" #include "components/metrics/metrics_service.h" #include "components/metrics/net/net_metrics_log_uploader.h" +#include "components/metrics/net/network_metrics_provider.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/histogram_fetcher.h" #include "content/public/browser/notification_service.h" @@ -292,7 +292,8 @@ void ChromeMetricsServiceClient::Initialize() { new ExtensionsMetricsProvider(metrics_state_manager_))); #endif metrics_service_->RegisterMetricsProvider( - scoped_ptr<metrics::MetricsProvider>(new NetworkMetricsProvider)); + scoped_ptr<metrics::MetricsProvider>(new NetworkMetricsProvider( + content::BrowserThread::GetBlockingPool()))); metrics_service_->RegisterMetricsProvider( scoped_ptr<metrics::MetricsProvider>(new OmniboxMetricsProvider)); metrics_service_->RegisterMetricsProvider( diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi index 69d4d7a..448cc90 100644 --- a/chrome/chrome_browser.gypi +++ b/chrome/chrome_browser.gypi @@ -689,8 +689,6 @@ 'browser/metrics/metrics_service_accessor.h', 'browser/metrics/metrics_services_manager.cc', 'browser/metrics/metrics_services_manager.h', - 'browser/metrics/network_metrics_provider.cc', - 'browser/metrics/network_metrics_provider.h', 'browser/metrics/network_stats_uploader.cc', 'browser/metrics/network_stats_uploader.h', 'browser/metrics/omnibox_metrics_provider.cc', @@ -722,10 +720,6 @@ 'browser/metrics/variations/variations_seed_store.h', 'browser/metrics/variations/variations_service.cc', 'browser/metrics/variations/variations_service.h', - 'browser/metrics/wifi_access_point_info_provider.h', - 'browser/metrics/wifi_access_point_info_provider.cc', - 'browser/metrics/wifi_access_point_info_provider_chromeos.h', - 'browser/metrics/wifi_access_point_info_provider_chromeos.cc', 'browser/native_window_notification_source.h', 'browser/net/about_protocol_handler.cc', 'browser/net/about_protocol_handler.h', diff --git a/components/metrics.gypi b/components/metrics.gypi index 945d1c16..8d053f4 100644 --- a/components/metrics.gypi +++ b/components/metrics.gypi @@ -73,11 +73,18 @@ ], 'dependencies': [ '../net/net.gyp:net', + 'component_metrics_proto', 'metrics', ], 'sources': [ + 'metrics/net/network_metrics_provider.cc', + 'metrics/net/network_metrics_provider.h', 'metrics/net/net_metrics_log_uploader.cc', 'metrics/net/net_metrics_log_uploader.h', + 'metrics/net/wifi_access_point_info_provider.cc', + 'metrics/net/wifi_access_point_info_provider.h', + 'metrics/net/wifi_access_point_info_provider_chromeos.cc', + 'metrics/net/wifi_access_point_info_provider_chromeos.h', ], }, { diff --git a/components/metrics/BUILD.gn b/components/metrics/BUILD.gn index 92f9e89..fc3483d 100644 --- a/components/metrics/BUILD.gn +++ b/components/metrics/BUILD.gn @@ -52,8 +52,14 @@ source_set("metrics") { # GYP version: components/metrics.gypi:metrics_net static_library("net") { sources = [ + "net/network_metrics_provider.cc", + "net/network_metrics_provider.h", "net/net_metrics_log_uploader.cc", "net/net_metrics_log_uploader.h", + "net/wifi_access_point_info_provider.cc", + "net/wifi_access_point_info_provider.h", + "net/wifi_access_point_info_provider_chromeos.cc", + "net/wifi_access_point_info_provider_chromeos.h", ] deps = [ diff --git a/components/metrics/net/DEPS b/components/metrics/net/DEPS index ede766a..54226d4 100644 --- a/components/metrics/net/DEPS +++ b/components/metrics/net/DEPS @@ -1,3 +1,5 @@ include_rules = [ + "+chromeos/network", "+net", + "+third_party/cros_system_api", ] diff --git a/chrome/browser/metrics/network_metrics_provider.cc b/components/metrics/net/network_metrics_provider.cc index d540b63..c0b38d7 100644 --- a/chrome/browser/metrics/network_metrics_provider.cc +++ b/components/metrics/net/network_metrics_provider.cc @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/browser/metrics/network_metrics_provider.h" +#include "components/metrics/net/network_metrics_provider.h" #include <string> #include <vector> @@ -12,17 +12,17 @@ #include "base/strings/string_split.h" #include "base/strings/string_util.h" #include "base/task_runner_util.h" -#include "base/threading/sequenced_worker_pool.h" -#include "content/public/browser/browser_thread.h" #if defined(OS_CHROMEOS) -#include "chrome/browser/metrics/wifi_access_point_info_provider_chromeos.h" +#include "components/metrics/net/wifi_access_point_info_provider_chromeos.h" #endif // OS_CHROMEOS using metrics::SystemProfileProto; -NetworkMetricsProvider::NetworkMetricsProvider() - : connection_type_is_ambiguous_(false), +NetworkMetricsProvider::NetworkMetricsProvider( + base::TaskRunner* io_task_runner) + : io_task_runner_(io_task_runner), + connection_type_is_ambiguous_(false), wifi_phy_layer_protocol_is_ambiguous_(false), wifi_phy_layer_protocol_(net::WIFI_PHY_LAYER_PROTOCOL_UNKNOWN), weak_ptr_factory_(this) { @@ -131,7 +131,7 @@ NetworkMetricsProvider::GetWifiPHYLayerProtocol() const { void NetworkMetricsProvider::ProbeWifiPHYLayerProtocol() { PostTaskAndReplyWithResult( - content::BrowserThread::GetBlockingPool(), + io_task_runner_, FROM_HERE, base::Bind(&net::GetWifiPHYLayerProtocol), base::Bind(&NetworkMetricsProvider::OnWifiPHYLayerProtocolResult, diff --git a/chrome/browser/metrics/network_metrics_provider.h b/components/metrics/net/network_metrics_provider.h index f6b4104..43a0318 100644 --- a/chrome/browser/metrics/network_metrics_provider.h +++ b/components/metrics/net/network_metrics_provider.h @@ -2,14 +2,14 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_METRICS_NETWORK_METRICS_PROVIDER_H_ -#define CHROME_BROWSER_METRICS_NETWORK_METRICS_PROVIDER_H_ +#ifndef COMPONENTS_METRICS_NET_NETWORK_METRICS_PROVIDER_H_ +#define COMPONENTS_METRICS_NET_NETWORK_METRICS_PROVIDER_H_ #include "base/basictypes.h" #include "base/memory/scoped_ptr.h" #include "base/memory/weak_ptr.h" -#include "chrome/browser/metrics/wifi_access_point_info_provider.h" #include "components/metrics/metrics_provider.h" +#include "components/metrics/net/wifi_access_point_info_provider.h" #include "components/metrics/proto/system_profile.pb.h" #include "net/base/net_util.h" #include "net/base/network_change_notifier.h" @@ -20,7 +20,9 @@ class NetworkMetricsProvider : public metrics::MetricsProvider, public net::NetworkChangeNotifier::ConnectionTypeObserver { public: - NetworkMetricsProvider(); + // Creates a NetworkMetricsProvider, where |io_task_runner| is used to post + // network info collection tasks. + explicit NetworkMetricsProvider(base::TaskRunner* io_task_runner); virtual ~NetworkMetricsProvider(); private: @@ -50,6 +52,9 @@ class NetworkMetricsProvider const WifiAccessPointInfoProvider::WifiAccessPointInfo& info, metrics::SystemProfileProto::Network* network_proto); + // Task runner used for blocking file I/O. + base::TaskRunner* io_task_runner_; + // True if |connection_type_| changed during the lifetime of the log. bool connection_type_is_ambiguous_; // The connection type according to net::NetworkChangeNotifier. @@ -69,4 +74,4 @@ class NetworkMetricsProvider DISALLOW_COPY_AND_ASSIGN(NetworkMetricsProvider); }; -#endif // CHROME_BROWSER_METRICS_NETWORK_METRICS_PROVIDER_H_ +#endif // COMPONENTS_METRICS_NET_NETWORK_METRICS_PROVIDER_H_ diff --git a/chrome/browser/metrics/wifi_access_point_info_provider.cc b/components/metrics/net/wifi_access_point_info_provider.cc index 8789fa1..c8f07a4 100644 --- a/chrome/browser/metrics/wifi_access_point_info_provider.cc +++ b/components/metrics/net/wifi_access_point_info_provider.cc @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/browser/metrics/wifi_access_point_info_provider.h" +#include "components/metrics/net/wifi_access_point_info_provider.h" WifiAccessPointInfoProvider::WifiAccessPointInfo::WifiAccessPointInfo() { } diff --git a/chrome/browser/metrics/wifi_access_point_info_provider.h b/components/metrics/net/wifi_access_point_info_provider.h index ab7c443..5d74c3c 100644 --- a/chrome/browser/metrics/wifi_access_point_info_provider.h +++ b/components/metrics/net/wifi_access_point_info_provider.h @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_METRICS_WIFI_ACCESS_POINT_INFO_PROVIDER_H_ -#define CHROME_BROWSER_METRICS_WIFI_ACCESS_POINT_INFO_PROVIDER_H_ +#ifndef COMPONENTS_METRICS_NET_WIFI_ACCESS_POINT_INFO_PROVIDER_H_ +#define COMPONENTS_METRICS_NET_WIFI_ACCESS_POINT_INFO_PROVIDER_H_ #include <string> #include "base/basictypes.h" @@ -46,4 +46,4 @@ class WifiAccessPointInfoProvider { DISALLOW_COPY_AND_ASSIGN(WifiAccessPointInfoProvider); }; -#endif // CHROME_BROWSER_METRICS_WIFI_ACCESS_POINT_INFO_PROVIDER_H_ +#endif // COMPONENTS_METRICS_NET_WIFI_ACCESS_POINT_INFO_PROVIDER_H_ diff --git a/chrome/browser/metrics/wifi_access_point_info_provider_chromeos.cc b/components/metrics/net/wifi_access_point_info_provider_chromeos.cc index 3fa5c31..c05829b 100644 --- a/chrome/browser/metrics/wifi_access_point_info_provider_chromeos.cc +++ b/components/metrics/net/wifi_access_point_info_provider_chromeos.cc @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/browser/metrics/wifi_access_point_info_provider_chromeos.h" +#include "components/metrics/net/wifi_access_point_info_provider_chromeos.h" #include "base/bind.h" #include "base/location.h" diff --git a/chrome/browser/metrics/wifi_access_point_info_provider_chromeos.h b/components/metrics/net/wifi_access_point_info_provider_chromeos.h index 5d9502f..6eaebab 100644 --- a/chrome/browser/metrics/wifi_access_point_info_provider_chromeos.h +++ b/components/metrics/net/wifi_access_point_info_provider_chromeos.h @@ -2,14 +2,14 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_METRICS_WIFI_ACCESS_POINT_INFO_PROVIDER_CHROMEOS_H_ -#define CHROME_BROWSER_METRICS_WIFI_ACCESS_POINT_INFO_PROVIDER_CHROMEOS_H_ +#ifndef COMPONENTS_METRICS_NET_WIFI_ACCESS_POINT_INFO_PROVIDER_CHROMEOS_H_ +#define COMPONENTS_METRICS_NET_WIFI_ACCESS_POINT_INFO_PROVIDER_CHROMEOS_H_ #include "base/basictypes.h" #include "base/memory/weak_ptr.h" #include "base/values.h" -#include "chrome/browser/metrics/wifi_access_point_info_provider.h" #include "chromeos/network/network_state_handler_observer.h" +#include "components/metrics/net/wifi_access_point_info_provider.h" // WifiAccessPointInfoProviderChromeos provides the connected wifi // acccess point information for chromeos. @@ -39,4 +39,4 @@ class WifiAccessPointInfoProviderChromeos DISALLOW_COPY_AND_ASSIGN(WifiAccessPointInfoProviderChromeos); }; -#endif // CHROME_BROWSER_METRICS_WIFI_ACCESS_POINT_INFO_PROVIDER_CHROMEOS_H_ +#endif // COMPONENTS_METRICS_NET_WIFI_ACCESS_POINT_INFO_PROVIDER_CHROMEOS_H_ |