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

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

Issue 289373007: Rename MetricsServiceHelper to ChromeMetricsServiceAccessor. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Another rebas. Created 6 years, 7 months 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 | Annotate | Revision Log
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "chrome/browser/metrics/chrome_metrics_service_accessor.h"
6
7 #include "base/prefs/pref_service.h"
8 #include "chrome/browser/browser_process.h"
9 #include "chrome/browser/metrics/metrics_service.h"
10 #include "chrome/common/pref_names.h"
11 #include "components/metrics/metrics_service_observer.h"
12
13 #if defined(OS_CHROMEOS)
14 #include "chrome/browser/chromeos/settings/cros_settings.h"
15 #endif
16
17 // static
18 bool ChromeMetricsServiceAccessor::IsMetricsReportingEnabled() {
19 bool result = false;
20 const PrefService* local_state = g_browser_process->local_state();
21 if (local_state) {
22 const PrefService::Preference* uma_pref =
23 local_state->FindPreference(prefs::kMetricsReportingEnabled);
24 if (uma_pref) {
25 bool success = uma_pref->GetValue()->GetAsBoolean(&result);
26 DCHECK(success);
27 }
28 }
29 return result;
30 }
31
32 bool ChromeMetricsServiceAccessor::IsCrashReportingEnabled() {
33 #if defined(GOOGLE_CHROME_BUILD)
34 #if defined(OS_CHROMEOS)
35 bool reporting_enabled = false;
36 chromeos::CrosSettings::Get()->GetBoolean(chromeos::kStatsReportingPref,
37 &reporting_enabled);
38 return reporting_enabled;
39 #elif defined(OS_ANDROID)
40 // Android has its own settings for metrics / crash uploading.
41 const PrefService* prefs = g_browser_process->local_state();
42 return prefs->GetBoolean(prefs::kCrashReportingEnabled);
43 #else
44 return ChromeMetricsServiceAccessor::IsMetricsReportingEnabled();
45 #endif
46 #else
47 return false;
48 #endif
49 }
50
51 void ChromeMetricsServiceAccessor::AddMetricsServiceObserver(
52 MetricsServiceObserver* observer) {
53 MetricsService* metrics_service = g_browser_process->metrics_service();
54 if (metrics_service)
55 metrics_service->AddObserver(observer);
56 }
57
58 void ChromeMetricsServiceAccessor::RemoveMetricsServiceObserver(
59 MetricsServiceObserver* observer) {
60 MetricsService* metrics_service = g_browser_process->metrics_service();
61 if (metrics_service)
62 metrics_service->RemoveObserver(observer);
63 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698