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

Unified Diff: chromeos/power/power_state_override.cc

Issue 12775019: chromeos: Remove PowerStateOverride. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: more feedback Created 7 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chromeos/power/power_state_override.h ('k') | chromeos/power/power_state_override_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chromeos/power/power_state_override.cc
diff --git a/chromeos/power/power_state_override.cc b/chromeos/power/power_state_override.cc
deleted file mode 100644
index b46e57424ae2ace0f12e9e8953b53ea00da02aff..0000000000000000000000000000000000000000
--- a/chromeos/power/power_state_override.cc
+++ /dev/null
@@ -1,100 +0,0 @@
-// Copyright (c) 2012 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 "chromeos/power/power_state_override.h"
-
-#include "base/bind.h"
-#include "base/message_loop.h"
-#include "base/time.h"
-#include "chromeos/dbus/dbus_thread_manager.h"
-#include "chromeos/dbus/power_manager_client.h"
-
-namespace {
-
-// Frequency with which overrides are renewed.
-const int kHeartbeatTimeInSecs = 300;
-
-// Duration beyond |kHeartbeatTimeInSecs| for which overrides are requested.
-// This should be long enough that we're able to renew the request before it
-// expires, but short enough that the power manager won't end up honoring a
-// stale request for a long time if Chrome crashes and orphans its requests.
-const int kRequestSlackInSecs = 15;
-
-} // namespace
-
-namespace chromeos {
-
-PowerStateOverride::PowerStateOverride(Mode mode)
- : override_types_(0),
- request_id_(0),
- dbus_thread_manager_(DBusThreadManager::Get()) {
- switch (mode) {
- case BLOCK_DISPLAY_SLEEP:
- override_types_ |= (PowerManagerClient::DISABLE_IDLE_DIM |
- PowerManagerClient::DISABLE_IDLE_BLANK);
- // fallthrough
- case BLOCK_SYSTEM_SUSPEND:
- override_types_ |= PowerManagerClient::DISABLE_IDLE_SUSPEND;
- break;
- default:
- NOTREACHED() << "Unhandled mode " << mode;
- }
-
- dbus_thread_manager_->AddObserver(this);
-
- // request_id_ = 0 will create a new override request.
- // We do a post task here to ensure that this request runs 'after' our
- // constructor is done. If not, there is a possibility (though only in
- // tests at the moment) that the power state override request executes
- // and returns before the constructor has finished executing. This will
- // cause an AddRef and a Release, the latter destructing our current
- // instance even before the constructor has finished executing (as it does
- // in the DownloadExtensionTest browsertests currently).
- MessageLoop::current()->PostTask(
- FROM_HERE,
- base::Bind(&PowerStateOverride::CallRequestPowerStateOverrides, this));
-
- heartbeat_.Start(FROM_HERE,
- base::TimeDelta::FromSeconds(kHeartbeatTimeInSecs),
- this,
- &PowerStateOverride::CallRequestPowerStateOverrides);
-}
-
-PowerStateOverride::~PowerStateOverride() {
- if (dbus_thread_manager_)
- dbus_thread_manager_->RemoveObserver(this);
- CancelRequest();
-}
-
-void PowerStateOverride::OnDBusThreadManagerDestroying(
- DBusThreadManager* manager) {
- DCHECK_EQ(manager, dbus_thread_manager_);
- CancelRequest();
- dbus_thread_manager_ = NULL;
-}
-
-void PowerStateOverride::SetRequestId(uint32 request_id) {
- request_id_ = request_id;
-}
-
-void PowerStateOverride::CallRequestPowerStateOverrides() {
- DCHECK(dbus_thread_manager_);
- dbus_thread_manager_->GetPowerManagerClient()->RequestPowerStateOverrides(
- request_id_,
- base::TimeDelta::FromSeconds(
- kHeartbeatTimeInSecs + kRequestSlackInSecs),
- override_types_,
- base::Bind(&PowerStateOverride::SetRequestId, this));
-}
-
-void PowerStateOverride::CancelRequest() {
- if (request_id_) {
- DCHECK(dbus_thread_manager_);
- dbus_thread_manager_->GetPowerManagerClient()->
- CancelPowerStateOverrides(request_id_);
- request_id_ = 0;
- }
-}
-
-} // namespace chromeos
« no previous file with comments | « chromeos/power/power_state_override.h ('k') | chromeos/power/power_state_override_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698