login_event_recorder.cc revision 5f1c94371a64b3196d4be9466099bb892df9b88e
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 "chromeos/login_event_recorder.h"
6
7#include <vector>
8
9#include "base/lazy_instance.h"
10
11namespace chromeos {
12
13static base::LazyInstance<LoginEventRecorder> g_login_event_recorder =
14    LAZY_INSTANCE_INITIALIZER;
15
16LoginEventRecorder::LoginEventRecorder() : delegate_(NULL) {
17}
18
19LoginEventRecorder::~LoginEventRecorder() {
20}
21
22// static
23LoginEventRecorder* LoginEventRecorder::Get() {
24  return g_login_event_recorder.Pointer();
25}
26
27void LoginEventRecorder::SetDelegate(LoginEventRecorder::Delegate* delegate) {
28  delegate_ = delegate;
29}
30
31void LoginEventRecorder::AddLoginTimeMarker(const std::string& marker_name,
32                                            bool send_to_uma) {
33  if (delegate_)
34    delegate_->AddLoginTimeMarker(marker_name, send_to_uma);
35}
36
37}  // namespace chromeos
38