diff options
author | mbelshe@google.com <mbelshe@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-01 00:52:40 +0000 |
---|---|---|
committer | mbelshe@google.com <mbelshe@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-01 00:52:40 +0000 |
commit | 3abd6bbdfb0a6d8367a2c56d4846e3d70d9da660 (patch) | |
tree | c6b872305f258a653ac0203eeb25b5b08ae2eb00 /chrome/browser/suspend_controller.h | |
parent | 4f470ec4e08cf042997d68c55bb7aeeeeaa1209c (diff) | |
download | chromium_src-3abd6bbdfb0a6d8367a2c56d4846e3d70d9da660.zip chromium_src-3abd6bbdfb0a6d8367a2c56d4846e3d70d9da660.tar.gz chromium_src-3abd6bbdfb0a6d8367a2c56d4846e3d70d9da660.tar.bz2 |
Rollback
Review URL: http://codereview.chromium.org/13009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6127 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/suspend_controller.h')
-rw-r--r-- | chrome/browser/suspend_controller.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/chrome/browser/suspend_controller.h b/chrome/browser/suspend_controller.h new file mode 100644 index 0000000..c151d0c --- /dev/null +++ b/chrome/browser/suspend_controller.h @@ -0,0 +1,40 @@ +// Copyright (c) 2006-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. + +// The SuspendController keeps track of actions related to the computer going +// into power savings mode. Its purpose right now is to close all network +// requests and prevent creation of new requests until the computer resumes. + +#ifndef CHROME_BROWSER_SUSPEND_CONTROLLER_H__ +#define CHROME_BROWSER_SUSPEND_CONTROLLER_H__ + +#include "base/basictypes.h" +#include "chrome/browser/profile.h" + +class Profile; + +// The browser process owns the only instance of this class. +class SuspendController : public base::RefCountedThreadSafe<SuspendController> { + public: + SuspendController() {} + ~SuspendController() {} + + // Called when the system is going to be suspended. + static void OnSuspend(Profile* profile); + + // Called when the system has been resumed. + static void OnResume(Profile* profile); + + private: + // Run on the io_thread. + void StopRequests(Profile* profile); + void AllowNewRequests(Profile* profile); + + static bool is_suspended_; + + DISALLOW_EVIL_CONSTRUCTORS(SuspendController); +}; + +#endif // CHROME_BROWSER_SUSPEND_CONTROLLER_H__ + |