Upstream version 11.40.271.0
[platform/framework/web/crosswalk.git] / src / chromeos / system / fake_statistics_provider.cc
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/system/fake_statistics_provider.h"
6
7 namespace chromeos {
8 namespace system {
9
10 FakeStatisticsProvider::FakeStatisticsProvider() {
11 }
12
13 FakeStatisticsProvider::~FakeStatisticsProvider() {
14 }
15
16 void FakeStatisticsProvider::StartLoadingMachineStatistics(
17     const scoped_refptr<base::TaskRunner>& file_task_runner,
18     bool load_oem_manifest) {
19 }
20
21 bool FakeStatisticsProvider::GetMachineStatistic(const std::string& name,
22                                                  std::string* result) {
23   std::map<std::string, std::string>::const_iterator match =
24       machine_statistics_.find(name);
25   if (match != machine_statistics_.end() && result)
26     *result = match->second;
27   return match != machine_statistics_.end();
28 }
29
30 bool FakeStatisticsProvider::HasMachineStatistic(const std::string& name) {
31   return machine_statistics_.find(name) != machine_statistics_.end();
32 }
33
34 bool FakeStatisticsProvider::GetMachineFlag(const std::string& name,
35                                             bool* result) {
36   std::map<std::string, bool>::const_iterator match = machine_flags_.find(name);
37   if (match != machine_flags_.end() && result)
38     *result = match->second;
39   return match != machine_flags_.end();
40 }
41
42 bool FakeStatisticsProvider::HasMachineFlag(const std::string& name) {
43   return machine_flags_.find(name) != machine_flags_.end();
44 }
45
46 void FakeStatisticsProvider::Shutdown() {
47 }
48
49 void FakeStatisticsProvider::SetMachineStatistic(const std::string& key,
50                                                  const std::string& value) {
51   machine_statistics_[key] = value;
52 }
53
54 void FakeStatisticsProvider::ClearMachineStatistic(const std::string& key) {
55   machine_statistics_.erase(key);
56 }
57
58 void FakeStatisticsProvider::SetMachineFlag(const std::string& key,
59                                             bool value) {
60   machine_flags_[key] = value;
61 }
62
63 void FakeStatisticsProvider::ClearMachineFlag(const std::string& key) {
64   machine_flags_.erase(key);
65 }
66
67 ScopedFakeStatisticsProvider::ScopedFakeStatisticsProvider() {
68   StatisticsProvider::SetTestProvider(this);
69 }
70
71 ScopedFakeStatisticsProvider::~ScopedFakeStatisticsProvider() {
72   StatisticsProvider::SetTestProvider(NULL);
73 }
74
75 }  // namespace system
76 }  // namespace chromeos