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

Side by Side Diff: chrome/browser/metrics/chrome_metrics_service_client.cc

Issue 1459793002: Android: Allow compiling browser without Java UI (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 years 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #include "chrome/browser/metrics/chrome_metrics_service_client.h" 5 #include "chrome/browser/metrics/chrome_metrics_service_client.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 10 matching lines...) Expand all
21 #include "chrome/browser/chrome_notification_types.h" 21 #include "chrome/browser/chrome_notification_types.h"
22 #include "chrome/browser/google/google_brand.h" 22 #include "chrome/browser/google/google_brand.h"
23 #include "chrome/browser/metrics/chrome_stability_metrics_provider.h" 23 #include "chrome/browser/metrics/chrome_stability_metrics_provider.h"
24 #include "chrome/browser/metrics/time_ticks_experiment_win.h" 24 #include "chrome/browser/metrics/time_ticks_experiment_win.h"
25 #include "chrome/browser/ui/browser_otr_state.h" 25 #include "chrome/browser/ui/browser_otr_state.h"
26 #include "chrome/common/channel_info.h" 26 #include "chrome/common/channel_info.h"
27 #include "chrome/common/chrome_constants.h" 27 #include "chrome/common/chrome_constants.h"
28 #include "chrome/common/chrome_paths.h" 28 #include "chrome/common/chrome_paths.h"
29 #include "chrome/common/chrome_switches.h" 29 #include "chrome/common/chrome_switches.h"
30 #include "chrome/common/crash_keys.h" 30 #include "chrome/common/crash_keys.h"
31 #include "chrome/common/features.h"
31 #include "components/metrics/call_stack_profile_metrics_provider.h" 32 #include "components/metrics/call_stack_profile_metrics_provider.h"
32 #include "components/metrics/drive_metrics_provider.h" 33 #include "components/metrics/drive_metrics_provider.h"
33 #include "components/metrics/gpu/gpu_metrics_provider.h" 34 #include "components/metrics/gpu/gpu_metrics_provider.h"
34 #include "components/metrics/metrics_pref_names.h" 35 #include "components/metrics/metrics_pref_names.h"
35 #include "components/metrics/metrics_service.h" 36 #include "components/metrics/metrics_service.h"
36 #include "components/metrics/net/net_metrics_log_uploader.h" 37 #include "components/metrics/net/net_metrics_log_uploader.h"
37 #include "components/metrics/net/network_metrics_provider.h" 38 #include "components/metrics/net/network_metrics_provider.h"
38 #include "components/metrics/net/version_utils.h" 39 #include "components/metrics/net/version_utils.h"
39 #include "components/metrics/profiler/profiler_metrics_provider.h" 40 #include "components/metrics/profiler/profiler_metrics_provider.h"
40 #include "components/metrics/profiler/tracking_synchronizer.h" 41 #include "components/metrics/profiler/tracking_synchronizer.h"
41 #include "components/metrics/stability_metrics_helper.h" 42 #include "components/metrics/stability_metrics_helper.h"
42 #include "components/metrics/ui/screen_info_metrics_provider.h" 43 #include "components/metrics/ui/screen_info_metrics_provider.h"
43 #include "components/metrics/url_constants.h" 44 #include "components/metrics/url_constants.h"
44 #include "components/omnibox/browser/omnibox_metrics_provider.h" 45 #include "components/omnibox/browser/omnibox_metrics_provider.h"
45 #include "components/variations/variations_associated_data.h" 46 #include "components/variations/variations_associated_data.h"
46 #include "components/version_info/version_info.h" 47 #include "components/version_info/version_info.h"
47 #include "content/public/browser/browser_thread.h" 48 #include "content/public/browser/browser_thread.h"
48 #include "content/public/browser/histogram_fetcher.h" 49 #include "content/public/browser/histogram_fetcher.h"
49 #include "content/public/browser/notification_service.h" 50 #include "content/public/browser/notification_service.h"
50 51
51 #if defined(OS_ANDROID) 52 #if BUILDFLAG(ANDROID_JAVA_UI)
52 #include "chrome/browser/metrics/android_metrics_provider.h" 53 #include "chrome/browser/metrics/android_metrics_provider.h"
53 #endif 54 #endif
54 55
55 #if defined(ENABLE_PRINT_PREVIEW) 56 #if defined(ENABLE_PRINT_PREVIEW)
56 #include "chrome/browser/service_process/service_process_control.h" 57 #include "chrome/browser/service_process/service_process_control.h"
57 #endif 58 #endif
58 59
59 #if defined(ENABLE_EXTENSIONS) 60 #if defined(ENABLE_EXTENSIONS)
60 #include "chrome/browser/metrics/extensions_metrics_provider.h" 61 #include "chrome/browser/metrics/extensions_metrics_provider.h"
61 #endif 62 #endif
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 107
107 return net::NetworkChangeNotifier::IsConnectionCellular( 108 return net::NetworkChangeNotifier::IsConnectionCellular(
108 net::NetworkChangeNotifier::GetConnectionType()); 109 net::NetworkChangeNotifier::GetConnectionType());
109 } 110 }
110 111
111 // Checks whether it is the first time that cellular uploads logic should be 112 // Checks whether it is the first time that cellular uploads logic should be
112 // enabled based on whether the the preference for that logic is initialized. 113 // enabled based on whether the the preference for that logic is initialized.
113 // This should happen only once as the used preference will be initialized 114 // This should happen only once as the used preference will be initialized
114 // afterwards in |UmaSessionStats.java|. 115 // afterwards in |UmaSessionStats.java|.
115 bool ShouldClearSavedMetrics() { 116 bool ShouldClearSavedMetrics() {
116 #if defined(OS_ANDROID) 117 #if BUILDFLAG(ANDROID_JAVA_UI)
117 PrefService* local_state = g_browser_process->local_state(); 118 PrefService* local_state = g_browser_process->local_state();
118 return !local_state->HasPrefPath(metrics::prefs::kMetricsReportingEnabled) && 119 return !local_state->HasPrefPath(metrics::prefs::kMetricsReportingEnabled) &&
119 variations::GetVariationParamValue("UMA_EnableCellularLogUpload", 120 variations::GetVariationParamValue("UMA_EnableCellularLogUpload",
120 "Enabled") == "true"; 121 "Enabled") == "true";
121 #else 122 #else
122 return false; 123 return false;
123 #endif 124 #endif
124 } 125 }
125 126
126 } // namespace 127 } // namespace
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 client->Initialize(); 164 client->Initialize();
164 165
165 return client.Pass(); 166 return client.Pass();
166 } 167 }
167 168
168 // static 169 // static
169 void ChromeMetricsServiceClient::RegisterPrefs(PrefRegistrySimple* registry) { 170 void ChromeMetricsServiceClient::RegisterPrefs(PrefRegistrySimple* registry) {
170 metrics::MetricsService::RegisterPrefs(registry); 171 metrics::MetricsService::RegisterPrefs(registry);
171 metrics::StabilityMetricsHelper::RegisterPrefs(registry); 172 metrics::StabilityMetricsHelper::RegisterPrefs(registry);
172 173
173 #if defined(OS_ANDROID) 174 #if BUILDFLAG(ANDROID_JAVA_UI)
174 AndroidMetricsProvider::RegisterPrefs(registry); 175 AndroidMetricsProvider::RegisterPrefs(registry);
175 #endif // defined(OS_ANDROID) 176 #endif // BUILDFLAG(ANDROID_JAVA_UI)
176 177
177 #if defined(ENABLE_PLUGINS) 178 #if defined(ENABLE_PLUGINS)
178 PluginMetricsProvider::RegisterPrefs(registry); 179 PluginMetricsProvider::RegisterPrefs(registry);
179 #endif // defined(ENABLE_PLUGINS) 180 #endif // defined(ENABLE_PLUGINS)
180 } 181 }
181 182
182 metrics::MetricsService* ChromeMetricsServiceClient::GetMetricsService() { 183 metrics::MetricsService* ChromeMetricsServiceClient::GetMetricsService() {
183 return metrics_service_.get(); 184 return metrics_service_.get();
184 } 185 }
185 186
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after
336 337
337 profiler_metrics_provider_ = 338 profiler_metrics_provider_ =
338 new metrics::ProfilerMetricsProvider(base::Bind(&IsCellularLogicEnabled)); 339 new metrics::ProfilerMetricsProvider(base::Bind(&IsCellularLogicEnabled));
339 metrics_service_->RegisterMetricsProvider( 340 metrics_service_->RegisterMetricsProvider(
340 scoped_ptr<metrics::MetricsProvider>(profiler_metrics_provider_)); 341 scoped_ptr<metrics::MetricsProvider>(profiler_metrics_provider_));
341 342
342 metrics_service_->RegisterMetricsProvider( 343 metrics_service_->RegisterMetricsProvider(
343 scoped_ptr<metrics::MetricsProvider>( 344 scoped_ptr<metrics::MetricsProvider>(
344 new metrics::CallStackProfileMetricsProvider)); 345 new metrics::CallStackProfileMetricsProvider));
345 346
346 #if defined(OS_ANDROID) 347 #if BUILDFLAG(ANDROID_JAVA_UI)
347 metrics_service_->RegisterMetricsProvider( 348 metrics_service_->RegisterMetricsProvider(
348 scoped_ptr<metrics::MetricsProvider>( 349 scoped_ptr<metrics::MetricsProvider>(
349 new AndroidMetricsProvider(g_browser_process->local_state()))); 350 new AndroidMetricsProvider(g_browser_process->local_state())));
350 #endif // defined(OS_ANDROID) 351 #endif // BUILDFLAG(ANDROID_JAVA_UI)
351 352
352 #if defined(OS_WIN) 353 #if defined(OS_WIN)
353 google_update_metrics_provider_ = new GoogleUpdateMetricsProviderWin; 354 google_update_metrics_provider_ = new GoogleUpdateMetricsProviderWin;
354 metrics_service_->RegisterMetricsProvider( 355 metrics_service_->RegisterMetricsProvider(
355 scoped_ptr<metrics::MetricsProvider>(google_update_metrics_provider_)); 356 scoped_ptr<metrics::MetricsProvider>(google_update_metrics_provider_));
356 357
357 metrics_service_->RegisterMetricsProvider( 358 metrics_service_->RegisterMetricsProvider(
358 scoped_ptr<metrics::MetricsProvider>( 359 scoped_ptr<metrics::MetricsProvider>(
359 new browser_watcher::WatcherMetricsProviderWin( 360 new browser_watcher::WatcherMetricsProviderWin(
360 chrome::kBrowserExitCodesRegistryPath, 361 chrome::kBrowserExitCodesRegistryPath,
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
603 break; 604 break;
604 605
605 default: 606 default:
606 NOTREACHED(); 607 NOTREACHED();
607 } 608 }
608 } 609 }
609 610
610 void ChromeMetricsServiceClient::OnURLOpenedFromOmnibox(OmniboxLog* log) { 611 void ChromeMetricsServiceClient::OnURLOpenedFromOmnibox(OmniboxLog* log) {
611 metrics_service_->OnApplicationNotIdle(); 612 metrics_service_->OnApplicationNotIdle();
612 } 613 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698