summaryrefslogtreecommitdiffstats
path: root/base/system_monitor.cc
diff options
context:
space:
mode:
Diffstat (limited to 'base/system_monitor.cc')
-rw-r--r--base/system_monitor.cc98
1 files changed, 0 insertions, 98 deletions
diff --git a/base/system_monitor.cc b/base/system_monitor.cc
deleted file mode 100644
index 44cdce5..0000000
--- a/base/system_monitor.cc
+++ /dev/null
@@ -1,98 +0,0 @@
-// Copyright (c) 2008 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/system_monitor.h"
-#include "base/logging.h"
-#include "base/message_loop.h"
-#include "base/singleton.h"
-
-namespace base {
-
-#if defined(ENABLE_BATTERY_MONITORING)
-// The amount of time (in ms) to wait before running the initial
-// battery check.
-static int kDelayedBatteryCheckMs = 10 * 1000;
-#endif // defined(ENABLE_BATTERY_MONITORING)
-
-SystemMonitor::SystemMonitor()
- : battery_in_use_(false),
- suspended_(false) {
- observer_list_ = new ObserverListThreadSafe<PowerObserver>();
-}
-
-void SystemMonitor::ProcessPowerMessage(PowerEvent event_id) {
- // Suppress duplicate notifications. Some platforms may
- // send multiple notifications of the same event.
- switch (event_id) {
- case POWER_STATE_EVENT:
- {
- bool on_battery = IsBatteryPower();
- if (on_battery != battery_in_use_) {
- battery_in_use_ = on_battery;
- NotifyPowerStateChange();
- }
- }
- break;
- case RESUME_EVENT:
- if (suspended_) {
- suspended_ = false;
- NotifyResume();
- }
- break;
- case SUSPEND_EVENT:
- if (!suspended_) {
- suspended_ = true;
- NotifySuspend();
- }
- break;
- }
-}
-
-void SystemMonitor::AddObserver(PowerObserver* obs) {
- observer_list_->AddObserver(obs);
-}
-
-void SystemMonitor::RemoveObserver(PowerObserver* obs) {
- observer_list_->RemoveObserver(obs);
-}
-
-void SystemMonitor::NotifyPowerStateChange() {
- LOG(INFO) << L"PowerStateChange: "
- << (BatteryPower() ? L"On" : L"Off") << L" battery";
- observer_list_->Notify(&PowerObserver::OnPowerStateChange, BatteryPower());
-}
-
-void SystemMonitor::NotifySuspend() {
- LOG(INFO) << L"Power Suspending";
- observer_list_->Notify(&PowerObserver::OnSuspend);
-}
-
-void SystemMonitor::NotifyResume() {
- LOG(INFO) << L"Power Resuming";
- observer_list_->Notify(&PowerObserver::OnResume);
-}
-
-// static
-SystemMonitor* SystemMonitor::Get() {
- // Uses the LeakySingletonTrait because cleanup is optional.
- return
- Singleton<SystemMonitor, LeakySingletonTraits<SystemMonitor> >::get();
-}
-
-// static
-void SystemMonitor::Start() {
-#if defined(ENABLE_BATTERY_MONITORING)
- DCHECK(MessageLoop::current()); // Can't call start too early.
- SystemMonitor* monitor = Get();
- monitor->delayed_battery_check_.Start(
- TimeDelta::FromMilliseconds(kDelayedBatteryCheckMs), monitor,
- &SystemMonitor::BatteryCheck);
-#endif // defined(ENABLE_BATTERY_MONITORING)
-}
-
-void SystemMonitor::BatteryCheck() {
- ProcessPowerMessage(SystemMonitor::POWER_STATE_EVENT);
-}
-
-} // namespace base