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

Side by Side Diff: chrome/browser/extensions/api/downloads/downloads_api.h

Issue 257333002: Drive extension functions from ExtensionFunction::Run. The (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix comment Created 6 years, 7 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 #ifndef CHROME_BROWSER_EXTENSIONS_API_DOWNLOADS_DOWNLOADS_API_H_ 5 #ifndef CHROME_BROWSER_EXTENSIONS_API_DOWNLOADS_DOWNLOADS_API_H_
6 #define CHROME_BROWSER_EXTENSIONS_API_DOWNLOADS_DOWNLOADS_API_H_ 6 #define CHROME_BROWSER_EXTENSIONS_API_DOWNLOADS_DOWNLOADS_API_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 10
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 std::string id_; 85 std::string id_;
86 std::string name_; 86 std::string name_;
87 87
88 DISALLOW_COPY_AND_ASSIGN(DownloadedByExtension); 88 DISALLOW_COPY_AND_ASSIGN(DownloadedByExtension);
89 }; 89 };
90 90
91 class DownloadsDownloadFunction : public ChromeAsyncExtensionFunction { 91 class DownloadsDownloadFunction : public ChromeAsyncExtensionFunction {
92 public: 92 public:
93 DECLARE_EXTENSION_FUNCTION("downloads.download", DOWNLOADS_DOWNLOAD) 93 DECLARE_EXTENSION_FUNCTION("downloads.download", DOWNLOADS_DOWNLOAD)
94 DownloadsDownloadFunction(); 94 DownloadsDownloadFunction();
95 virtual bool RunImpl() OVERRIDE; 95 virtual bool RunAsync() OVERRIDE;
96 96
97 protected: 97 protected:
98 virtual ~DownloadsDownloadFunction(); 98 virtual ~DownloadsDownloadFunction();
99 99
100 private: 100 private:
101 void OnStarted(const base::FilePath& creator_suggested_filename, 101 void OnStarted(const base::FilePath& creator_suggested_filename,
102 extensions::api::downloads::FilenameConflictAction 102 extensions::api::downloads::FilenameConflictAction
103 creator_conflict_action, 103 creator_conflict_action,
104 content::DownloadItem* item, 104 content::DownloadItem* item,
105 content::DownloadInterruptReason interrupt_reason); 105 content::DownloadInterruptReason interrupt_reason);
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 virtual ~DownloadsEraseFunction(); 169 virtual ~DownloadsEraseFunction();
170 170
171 private: 171 private:
172 DISALLOW_COPY_AND_ASSIGN(DownloadsEraseFunction); 172 DISALLOW_COPY_AND_ASSIGN(DownloadsEraseFunction);
173 }; 173 };
174 174
175 class DownloadsRemoveFileFunction : public ChromeAsyncExtensionFunction { 175 class DownloadsRemoveFileFunction : public ChromeAsyncExtensionFunction {
176 public: 176 public:
177 DECLARE_EXTENSION_FUNCTION("downloads.removeFile", DOWNLOADS_REMOVEFILE) 177 DECLARE_EXTENSION_FUNCTION("downloads.removeFile", DOWNLOADS_REMOVEFILE)
178 DownloadsRemoveFileFunction(); 178 DownloadsRemoveFileFunction();
179 virtual bool RunImpl() OVERRIDE; 179 virtual bool RunAsync() OVERRIDE;
180 180
181 protected: 181 protected:
182 virtual ~DownloadsRemoveFileFunction(); 182 virtual ~DownloadsRemoveFileFunction();
183 183
184 private: 184 private:
185 void Done(bool success); 185 void Done(bool success);
186 186
187 DISALLOW_COPY_AND_ASSIGN(DownloadsRemoveFileFunction); 187 DISALLOW_COPY_AND_ASSIGN(DownloadsRemoveFileFunction);
188 }; 188 };
189 189
190 class DownloadsAcceptDangerFunction : public ChromeAsyncExtensionFunction { 190 class DownloadsAcceptDangerFunction : public ChromeAsyncExtensionFunction {
191 public: 191 public:
192 typedef base::Callback<void(DownloadDangerPrompt*)> OnPromptCreatedCallback; 192 typedef base::Callback<void(DownloadDangerPrompt*)> OnPromptCreatedCallback;
193 static void OnPromptCreatedForTesting( 193 static void OnPromptCreatedForTesting(
194 OnPromptCreatedCallback* callback) { 194 OnPromptCreatedCallback* callback) {
195 on_prompt_created_ = callback; 195 on_prompt_created_ = callback;
196 } 196 }
197 197
198 DECLARE_EXTENSION_FUNCTION("downloads.acceptDanger", DOWNLOADS_ACCEPTDANGER) 198 DECLARE_EXTENSION_FUNCTION("downloads.acceptDanger", DOWNLOADS_ACCEPTDANGER)
199 DownloadsAcceptDangerFunction(); 199 DownloadsAcceptDangerFunction();
200 virtual bool RunImpl() OVERRIDE; 200 virtual bool RunAsync() OVERRIDE;
201 201
202 protected: 202 protected:
203 virtual ~DownloadsAcceptDangerFunction(); 203 virtual ~DownloadsAcceptDangerFunction();
204 void DangerPromptCallback(int download_id, 204 void DangerPromptCallback(int download_id,
205 DownloadDangerPrompt::Action action); 205 DownloadDangerPrompt::Action action);
206 206
207 private: 207 private:
208 void PromptOrWait(int download_id, int retries); 208 void PromptOrWait(int download_id, int retries);
209 209
210 static OnPromptCreatedCallback* on_prompt_created_; 210 static OnPromptCreatedCallback* on_prompt_created_;
211 DISALLOW_COPY_AND_ASSIGN(DownloadsAcceptDangerFunction); 211 DISALLOW_COPY_AND_ASSIGN(DownloadsAcceptDangerFunction);
212 }; 212 };
213 213
214 class DownloadsShowFunction : public ChromeAsyncExtensionFunction { 214 class DownloadsShowFunction : public ChromeAsyncExtensionFunction {
215 public: 215 public:
216 DECLARE_EXTENSION_FUNCTION("downloads.show", DOWNLOADS_SHOW) 216 DECLARE_EXTENSION_FUNCTION("downloads.show", DOWNLOADS_SHOW)
217 DownloadsShowFunction(); 217 DownloadsShowFunction();
218 virtual bool RunImpl() OVERRIDE; 218 virtual bool RunAsync() OVERRIDE;
219 219
220 protected: 220 protected:
221 virtual ~DownloadsShowFunction(); 221 virtual ~DownloadsShowFunction();
222 222
223 private: 223 private:
224 DISALLOW_COPY_AND_ASSIGN(DownloadsShowFunction); 224 DISALLOW_COPY_AND_ASSIGN(DownloadsShowFunction);
225 }; 225 };
226 226
227 class DownloadsShowDefaultFolderFunction : public ChromeAsyncExtensionFunction { 227 class DownloadsShowDefaultFolderFunction : public ChromeAsyncExtensionFunction {
228 public: 228 public:
229 DECLARE_EXTENSION_FUNCTION( 229 DECLARE_EXTENSION_FUNCTION(
230 "downloads.showDefaultFolder", DOWNLOADS_SHOWDEFAULTFOLDER) 230 "downloads.showDefaultFolder", DOWNLOADS_SHOWDEFAULTFOLDER)
231 DownloadsShowDefaultFolderFunction(); 231 DownloadsShowDefaultFolderFunction();
232 virtual bool RunImpl() OVERRIDE; 232 virtual bool RunAsync() OVERRIDE;
233 233
234 protected: 234 protected:
235 virtual ~DownloadsShowDefaultFolderFunction(); 235 virtual ~DownloadsShowDefaultFolderFunction();
236 236
237 private: 237 private:
238 DISALLOW_COPY_AND_ASSIGN(DownloadsShowDefaultFolderFunction); 238 DISALLOW_COPY_AND_ASSIGN(DownloadsShowDefaultFolderFunction);
239 }; 239 };
240 240
241 class DownloadsOpenFunction : public ChromeSyncExtensionFunction { 241 class DownloadsOpenFunction : public ChromeSyncExtensionFunction {
242 public: 242 public:
(...skipping 19 matching lines...) Expand all
262 virtual ~DownloadsSetShelfEnabledFunction(); 262 virtual ~DownloadsSetShelfEnabledFunction();
263 263
264 private: 264 private:
265 DISALLOW_COPY_AND_ASSIGN(DownloadsSetShelfEnabledFunction); 265 DISALLOW_COPY_AND_ASSIGN(DownloadsSetShelfEnabledFunction);
266 }; 266 };
267 267
268 class DownloadsDragFunction : public ChromeAsyncExtensionFunction { 268 class DownloadsDragFunction : public ChromeAsyncExtensionFunction {
269 public: 269 public:
270 DECLARE_EXTENSION_FUNCTION("downloads.drag", DOWNLOADS_DRAG) 270 DECLARE_EXTENSION_FUNCTION("downloads.drag", DOWNLOADS_DRAG)
271 DownloadsDragFunction(); 271 DownloadsDragFunction();
272 virtual bool RunImpl() OVERRIDE; 272 virtual bool RunAsync() OVERRIDE;
273 273
274 protected: 274 protected:
275 virtual ~DownloadsDragFunction(); 275 virtual ~DownloadsDragFunction();
276 276
277 private: 277 private:
278 DISALLOW_COPY_AND_ASSIGN(DownloadsDragFunction); 278 DISALLOW_COPY_AND_ASSIGN(DownloadsDragFunction);
279 }; 279 };
280 280
281 class DownloadsGetFileIconFunction : public ChromeAsyncExtensionFunction { 281 class DownloadsGetFileIconFunction : public ChromeAsyncExtensionFunction {
282 public: 282 public:
283 DECLARE_EXTENSION_FUNCTION("downloads.getFileIcon", DOWNLOADS_GETFILEICON) 283 DECLARE_EXTENSION_FUNCTION("downloads.getFileIcon", DOWNLOADS_GETFILEICON)
284 DownloadsGetFileIconFunction(); 284 DownloadsGetFileIconFunction();
285 virtual bool RunImpl() OVERRIDE; 285 virtual bool RunAsync() OVERRIDE;
286 void SetIconExtractorForTesting(DownloadFileIconExtractor* extractor); 286 void SetIconExtractorForTesting(DownloadFileIconExtractor* extractor);
287 287
288 protected: 288 protected:
289 virtual ~DownloadsGetFileIconFunction(); 289 virtual ~DownloadsGetFileIconFunction();
290 290
291 private: 291 private:
292 void OnIconURLExtracted(const std::string& url); 292 void OnIconURLExtracted(const std::string& url);
293 base::FilePath path_; 293 base::FilePath path_;
294 scoped_ptr<DownloadFileIconExtractor> icon_extractor_; 294 scoped_ptr<DownloadFileIconExtractor> icon_extractor_;
295 DISALLOW_COPY_AND_ASSIGN(DownloadsGetFileIconFunction); 295 DISALLOW_COPY_AND_ASSIGN(DownloadsGetFileIconFunction);
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
401 ScopedObserver<extensions::ExtensionRegistry, 401 ScopedObserver<extensions::ExtensionRegistry,
402 extensions::ExtensionRegistryObserver> 402 extensions::ExtensionRegistryObserver>
403 extension_registry_observer_; 403 extension_registry_observer_;
404 404
405 DISALLOW_COPY_AND_ASSIGN(ExtensionDownloadsEventRouter); 405 DISALLOW_COPY_AND_ASSIGN(ExtensionDownloadsEventRouter);
406 }; 406 };
407 407
408 } // namespace extensions 408 } // namespace extensions
409 409
410 #endif // CHROME_BROWSER_EXTENSIONS_API_DOWNLOADS_DOWNLOADS_API_H_ 410 #endif // CHROME_BROWSER_EXTENSIONS_API_DOWNLOADS_DOWNLOADS_API_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698