1 // Copyright (c) 2013 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 "chrome/browser/extensions/api/power/power_api.h" 6 7 #include "chrome/browser/extensions/api/power/power_api_manager.h" 8 #include "chrome/common/extensions/api/power.h" 9 10 namespace extensions { 11 RunSync()12bool PowerRequestKeepAwakeFunction::RunSync() { 13 scoped_ptr<api::power::RequestKeepAwake::Params> params( 14 api::power::RequestKeepAwake::Params::Create(*args_)); 15 EXTENSION_FUNCTION_VALIDATE(params); 16 EXTENSION_FUNCTION_VALIDATE(params->level != api::power::LEVEL_NONE); 17 PowerApiManager::Get(browser_context())->AddRequest( 18 extension_id(), params->level); 19 return true; 20 } 21 RunSync()22bool PowerReleaseKeepAwakeFunction::RunSync() { 23 PowerApiManager::Get(browser_context())->RemoveRequest(extension_id()); 24 return true; 25 } 26 27 } // namespace extensions 28