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

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

Issue 290343005: Pass MetricsServiceClient into MetricsService, and create a simple stubbed TestMetricsServiceClient… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase 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
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 //------------------------------------------------------------------------------ 5 //------------------------------------------------------------------------------
6 // Description of the life cycle of a instance of MetricsService. 6 // Description of the life cycle of a instance of MetricsService.
7 // 7 //
8 // OVERVIEW 8 // OVERVIEW
9 // 9 //
10 // A MetricsService instance is typically created at application startup. It is 10 // A MetricsService instance is typically created at application startup. It is
(...skipping 440 matching lines...) Expand 10 before | Expand all | Expand 10 after
451 registry->RegisterInt64Pref(prefs::kUninstallLaunchCount, 0); 451 registry->RegisterInt64Pref(prefs::kUninstallLaunchCount, 0);
452 registry->RegisterInt64Pref(prefs::kUninstallMetricsUptimeSec, 0); 452 registry->RegisterInt64Pref(prefs::kUninstallMetricsUptimeSec, 0);
453 registry->RegisterInt64Pref(prefs::kUninstallLastLaunchTimeSec, 0); 453 registry->RegisterInt64Pref(prefs::kUninstallLastLaunchTimeSec, 0);
454 registry->RegisterInt64Pref(prefs::kUninstallLastObservedRunTimeSec, 0); 454 registry->RegisterInt64Pref(prefs::kUninstallLastObservedRunTimeSec, 0);
455 455
456 #if defined(OS_ANDROID) 456 #if defined(OS_ANDROID)
457 RegisterPrefsAndroid(registry); 457 RegisterPrefsAndroid(registry);
458 #endif // defined(OS_ANDROID) 458 #endif // defined(OS_ANDROID)
459 } 459 }
460 460
461 MetricsService::MetricsService(metrics::MetricsStateManager* state_manager) 461 MetricsService::MetricsService(metrics::MetricsStateManager* state_manager,
462 metrics::MetricsServiceClient* client)
462 : MetricsServiceBase(g_browser_process->local_state(), 463 : MetricsServiceBase(g_browser_process->local_state(),
463 kUploadLogAvoidRetransmitSize), 464 kUploadLogAvoidRetransmitSize),
464 state_manager_(state_manager), 465 state_manager_(state_manager),
466 client_(client),
465 recording_active_(false), 467 recording_active_(false),
466 reporting_active_(false), 468 reporting_active_(false),
467 test_mode_active_(false), 469 test_mode_active_(false),
468 state_(INITIALIZED), 470 state_(INITIALIZED),
469 has_initial_stability_log_(false), 471 has_initial_stability_log_(false),
470 idle_since_last_transmission_(false), 472 idle_since_last_transmission_(false),
471 session_id_(-1), 473 session_id_(-1),
472 next_window_id_(0), 474 next_window_id_(0),
473 self_ptr_factory_(this), 475 self_ptr_factory_(this),
474 state_saver_factory_(this), 476 state_saver_factory_(this),
475 waiting_for_asynchronous_reporting_step_(false), 477 waiting_for_asynchronous_reporting_step_(false),
476 num_async_histogram_fetches_in_progress_(0) { 478 num_async_histogram_fetches_in_progress_(0) {
477 DCHECK(IsSingleThreaded()); 479 DCHECK(IsSingleThreaded());
478 DCHECK(state_manager_); 480 DCHECK(state_manager_);
481 DCHECK(client_);
479 482
480 BrowserChildProcessObserver::Add(this); 483 BrowserChildProcessObserver::Add(this);
481 } 484 }
482 485
483 MetricsService::~MetricsService() { 486 MetricsService::~MetricsService() {
484 DisableRecording(); 487 DisableRecording();
485 488
486 BrowserChildProcessObserver::Remove(this); 489 BrowserChildProcessObserver::Remove(this);
487 } 490 }
488 491
(...skipping 1503 matching lines...) Expand 10 before | Expand all | Expand 10 after
1992 if (metrics_service) 1995 if (metrics_service)
1993 metrics_service->AddObserver(observer); 1996 metrics_service->AddObserver(observer);
1994 } 1997 }
1995 1998
1996 void MetricsServiceHelper::RemoveMetricsServiceObserver( 1999 void MetricsServiceHelper::RemoveMetricsServiceObserver(
1997 MetricsServiceObserver* observer) { 2000 MetricsServiceObserver* observer) {
1998 MetricsService* metrics_service = g_browser_process->metrics_service(); 2001 MetricsService* metrics_service = g_browser_process->metrics_service();
1999 if (metrics_service) 2002 if (metrics_service)
2000 metrics_service->RemoveObserver(observer); 2003 metrics_service->RemoveObserver(observer);
2001 } 2004 }
OLDNEW
« no previous file with comments | « chrome/browser/metrics/metrics_service.h ('k') | chrome/browser/metrics/metrics_service_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698