| Index: base/power_monitor/power_monitor.cc
|
| diff --git a/base/system_monitor/system_monitor.cc b/base/power_monitor/power_monitor.cc
|
| similarity index 43%
|
| copy from base/system_monitor/system_monitor.cc
|
| copy to base/power_monitor/power_monitor.cc
|
| index 7c960cc09ff17bfec38301418de567790c6bd009..13e91c7ec9e7526b3c9eeaac84dff888be6ec4e8 100644
|
| --- a/base/system_monitor/system_monitor.cc
|
| +++ b/base/power_monitor/power_monitor.cc
|
| @@ -1,18 +1,14 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| +// Copyright 2013 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/system_monitor.h"
|
| +#include "base/power_monitor/power_monitor.h"
|
|
|
| -#include <utility>
|
| -
|
| -#include "base/logging.h"
|
| -#include "base/message_loop.h"
|
| #include "base/time.h"
|
|
|
| namespace base {
|
|
|
| -static SystemMonitor* g_system_monitor = NULL;
|
| +static PowerMonitor* g_power_monitor = NULL;
|
|
|
| #if defined(ENABLE_BATTERY_MONITORING)
|
| // The amount of time (in ms) to wait before running the initial
|
| @@ -20,40 +16,46 @@ static SystemMonitor* g_system_monitor = NULL;
|
| static int kDelayedBatteryCheckMs = 10 * 1000;
|
| #endif // defined(ENABLE_BATTERY_MONITORING)
|
|
|
| -SystemMonitor::SystemMonitor()
|
| - : power_observer_list_(new ObserverListThreadSafe<PowerObserver>()),
|
| - devices_changed_observer_list_(
|
| - new ObserverListThreadSafe<DevicesChangedObserver>()),
|
| +PowerMonitor::PowerMonitor()
|
| + : observers_(new ObserverListThreadSafe<PowerObserver>()),
|
| battery_in_use_(false),
|
| suspended_(false) {
|
| - DCHECK(!g_system_monitor);
|
| - g_system_monitor = this;
|
| + DCHECK(!g_power_monitor);
|
| + g_power_monitor = this;
|
|
|
| DCHECK(MessageLoop::current());
|
| #if defined(ENABLE_BATTERY_MONITORING)
|
| delayed_battery_check_.Start(FROM_HERE,
|
| base::TimeDelta::FromMilliseconds(kDelayedBatteryCheckMs), this,
|
| - &SystemMonitor::BatteryCheck);
|
| + &PowerMonitor::BatteryCheck);
|
| #endif // defined(ENABLE_BATTERY_MONITORING)
|
| #if defined(OS_MACOSX)
|
| PlatformInit();
|
| #endif
|
| }
|
|
|
| -SystemMonitor::~SystemMonitor() {
|
| +PowerMonitor::~PowerMonitor() {
|
| #if defined(OS_MACOSX)
|
| PlatformDestroy();
|
| #endif
|
| - DCHECK_EQ(this, g_system_monitor);
|
| - g_system_monitor = NULL;
|
| + DCHECK_EQ(this, g_power_monitor);
|
| + g_power_monitor = NULL;
|
| }
|
|
|
| // static
|
| -SystemMonitor* SystemMonitor::Get() {
|
| - return g_system_monitor;
|
| +PowerMonitor* PowerMonitor::Get() {
|
| + return g_power_monitor;
|
| +}
|
| +
|
| +void PowerMonitor::AddObserver(PowerObserver* obs) {
|
| + observers_->AddObserver(obs);
|
| +}
|
| +
|
| +void PowerMonitor::RemoveObserver(PowerObserver* obs) {
|
| + observers_->RemoveObserver(obs);
|
| }
|
|
|
| -void SystemMonitor::ProcessPowerMessage(PowerEvent event_id) {
|
| +void PowerMonitor::ProcessPowerEvent(PowerEvent event_id) {
|
| // Suppress duplicate notifications. Some platforms may
|
| // send multiple notifications of the same event.
|
| switch (event_id) {
|
| @@ -81,51 +83,24 @@ void SystemMonitor::ProcessPowerMessage(PowerEvent event_id) {
|
| }
|
| }
|
|
|
| -void SystemMonitor::ProcessDevicesChanged(DeviceType device_type) {
|
| - NotifyDevicesChanged(device_type);
|
| -}
|
| -
|
| -void SystemMonitor::AddPowerObserver(PowerObserver* obs) {
|
| - power_observer_list_->AddObserver(obs);
|
| -}
|
| -
|
| -void SystemMonitor::RemovePowerObserver(PowerObserver* obs) {
|
| - power_observer_list_->RemoveObserver(obs);
|
| +void PowerMonitor::BatteryCheck() {
|
| + ProcessPowerEvent(PowerMonitor::POWER_STATE_EVENT);
|
| }
|
|
|
| -void SystemMonitor::AddDevicesChangedObserver(DevicesChangedObserver* obs) {
|
| - devices_changed_observer_list_->AddObserver(obs);
|
| -}
|
| -
|
| -void SystemMonitor::RemoveDevicesChangedObserver(DevicesChangedObserver* obs) {
|
| - devices_changed_observer_list_->RemoveObserver(obs);
|
| -}
|
| -
|
| -void SystemMonitor::NotifyDevicesChanged(DeviceType device_type) {
|
| - DVLOG(1) << "DevicesChanged with device type " << device_type;
|
| - devices_changed_observer_list_->Notify(
|
| - &DevicesChangedObserver::OnDevicesChanged, device_type);
|
| -}
|
| -
|
| -void SystemMonitor::NotifyPowerStateChange() {
|
| +void PowerMonitor::NotifyPowerStateChange() {
|
| DVLOG(1) << "PowerStateChange: " << (BatteryPower() ? "On" : "Off")
|
| << " battery";
|
| - power_observer_list_->Notify(&PowerObserver::OnPowerStateChange,
|
| - BatteryPower());
|
| + observers_->Notify(&PowerObserver::OnPowerStateChange, BatteryPower());
|
| }
|
|
|
| -void SystemMonitor::NotifySuspend() {
|
| +void PowerMonitor::NotifySuspend() {
|
| DVLOG(1) << "Power Suspending";
|
| - power_observer_list_->Notify(&PowerObserver::OnSuspend);
|
| + observers_->Notify(&PowerObserver::OnSuspend);
|
| }
|
|
|
| -void SystemMonitor::NotifyResume() {
|
| +void PowerMonitor::NotifyResume() {
|
| DVLOG(1) << "Power Resuming";
|
| - power_observer_list_->Notify(&PowerObserver::OnResume);
|
| -}
|
| -
|
| -void SystemMonitor::BatteryCheck() {
|
| - ProcessPowerMessage(SystemMonitor::POWER_STATE_EVENT);
|
| + observers_->Notify(&PowerObserver::OnResume);
|
| }
|
|
|
| } // namespace base
|
|
|