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

Side by Side Diff: chrome/browser/extensions/api/alarms/alarms_api.cc

Issue 12314056: Make chrome/browser/extensions use base::Clock instead of MockTimeProvider (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add include Created 7 years, 10 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/extensions/api/alarms/alarms_api.h" 5 #include "chrome/browser/extensions/api/alarms/alarms_api.h"
6 6
7 #include "base/strings/string_number_conversions.h" 7 #include "base/strings/string_number_conversions.h"
8 #include "base/time/clock.h"
9 #include "base/time/default_clock.h"
8 #include "base/values.h" 10 #include "base/values.h"
9 #include "chrome/browser/extensions/api/alarms/alarm_manager.h" 11 #include "chrome/browser/extensions/api/alarms/alarm_manager.h"
10 #include "chrome/browser/extensions/extension_system.h" 12 #include "chrome/browser/extensions/extension_system.h"
11 #include "chrome/common/extensions/api/alarms.h" 13 #include "chrome/common/extensions/api/alarms.h"
12 #include "extensions/common/error_utils.h" 14 #include "extensions/common/error_utils.h"
13 15
14 namespace alarms = extensions::api::alarms; 16 namespace alarms = extensions::api::alarms;
15 17
16 namespace extensions { 18 namespace extensions {
17 19
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 alarm_name)); 83 alarm_name));
82 } 84 }
83 } 85 }
84 86
85 return true; 87 return true;
86 } 88 }
87 89
88 } // namespace 90 } // namespace
89 91
90 AlarmsCreateFunction::AlarmsCreateFunction() 92 AlarmsCreateFunction::AlarmsCreateFunction()
91 : now_(&base::Time::Now) { 93 : clock_(new base::DefaultClock()), owns_clock_(true) {}
94
95 AlarmsCreateFunction::AlarmsCreateFunction(base::Clock* clock)
96 : clock_(clock), owns_clock_(false) {}
97
98 AlarmsCreateFunction::~AlarmsCreateFunction() {
99 if (owns_clock_)
100 delete clock_;
92 } 101 }
93 102
94 bool AlarmsCreateFunction::RunImpl() { 103 bool AlarmsCreateFunction::RunImpl() {
95 scoped_ptr<alarms::Create::Params> params( 104 scoped_ptr<alarms::Create::Params> params(
96 alarms::Create::Params::Create(*args_)); 105 alarms::Create::Params::Create(*args_));
97 EXTENSION_FUNCTION_VALIDATE(params.get()); 106 EXTENSION_FUNCTION_VALIDATE(params.get());
98 const std::string& alarm_name = 107 const std::string& alarm_name =
99 params->name.get() ? *params->name : kDefaultAlarmName; 108 params->name.get() ? *params->name : kDefaultAlarmName;
100 std::vector<std::string> warnings; 109 std::vector<std::string> warnings;
101 if (!ValidateAlarmCreateInfo( 110 if (!ValidateAlarmCreateInfo(
102 alarm_name, params->alarm_info, GetExtension(), &error_, &warnings)) 111 alarm_name, params->alarm_info, GetExtension(), &error_, &warnings))
103 return false; 112 return false;
104 for (std::vector<std::string>::const_iterator it = warnings.begin(); 113 for (std::vector<std::string>::const_iterator it = warnings.begin();
105 it != warnings.end(); ++it) 114 it != warnings.end(); ++it)
106 WriteToConsole(content::CONSOLE_MESSAGE_LEVEL_WARNING, *it); 115 WriteToConsole(content::CONSOLE_MESSAGE_LEVEL_WARNING, *it);
107 116
108 Alarm alarm(alarm_name, 117 Alarm alarm(alarm_name,
109 params->alarm_info, 118 params->alarm_info,
110 base::TimeDelta::FromMinutes( 119 base::TimeDelta::FromMinutes(
111 GetExtension()->location() == Manifest::LOAD ? 120 GetExtension()->location() == Manifest::LOAD ?
112 kDevDelayMinimum : kReleaseDelayMinimum), 121 kDevDelayMinimum : kReleaseDelayMinimum),
113 now_); 122 clock_->Now());
114 ExtensionSystem::Get(profile())->alarm_manager()->AddAlarm( 123 ExtensionSystem::Get(profile())->alarm_manager()->AddAlarm(
115 extension_id(), alarm); 124 extension_id(), alarm);
116 125
117 return true; 126 return true;
118 } 127 }
119 128
120 bool AlarmsGetFunction::RunImpl() { 129 bool AlarmsGetFunction::RunImpl() {
121 scoped_ptr<alarms::Get::Params> params(alarms::Get::Params::Create(*args_)); 130 scoped_ptr<alarms::Get::Params> params(alarms::Get::Params::Create(*args_));
122 EXTENSION_FUNCTION_VALIDATE(params.get()); 131 EXTENSION_FUNCTION_VALIDATE(params.get());
123 132
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 return true; 178 return true;
170 } 179 }
171 180
172 bool AlarmsClearAllFunction::RunImpl() { 181 bool AlarmsClearAllFunction::RunImpl() {
173 ExtensionSystem::Get(profile())->alarm_manager()->RemoveAllAlarms( 182 ExtensionSystem::Get(profile())->alarm_manager()->RemoveAllAlarms(
174 extension_id()); 183 extension_id());
175 return true; 184 return true;
176 } 185 }
177 186
178 } // namespace extensions 187 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/browser/extensions/api/alarms/alarms_api.h ('k') | chrome/browser/extensions/api/alarms/alarms_api_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698