1 // Copyright 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 #ifndef CHROME_BROWSER_EXTENSIONS_API_IMAGE_WRITER_PRIVATE_IMAGE_WRITER_PRIVATE_API_H_
5 #define CHROME_BROWSER_EXTENSIONS_API_IMAGE_WRITER_PRIVATE_IMAGE_WRITER_PRIVATE_API_H_
7 #include "chrome/browser/extensions/api/image_writer_private/removable_storage_provider.h"
8 #include "chrome/browser/extensions/chrome_extension_function.h"
9 #include "chrome/common/extensions/api/image_writer_private.h"
11 namespace extensions {
13 class ImageWriterPrivateWriteFromUrlFunction
14 : public ChromeAsyncExtensionFunction {
16 DECLARE_EXTENSION_FUNCTION("imageWriterPrivate.writeFromUrl",
17 IMAGEWRITER_WRITEFROMURL)
18 ImageWriterPrivateWriteFromUrlFunction();
21 virtual ~ImageWriterPrivateWriteFromUrlFunction();
22 virtual bool RunImpl() OVERRIDE;
23 void OnWriteStarted(bool success, const std::string& error);
26 class ImageWriterPrivateWriteFromFileFunction
27 : public ChromeAsyncExtensionFunction {
29 DECLARE_EXTENSION_FUNCTION("imageWriterPrivate.writeFromFile",
30 IMAGEWRITER_WRITEFROMFILE)
31 ImageWriterPrivateWriteFromFileFunction();
34 virtual ~ImageWriterPrivateWriteFromFileFunction();
35 virtual bool RunImpl() OVERRIDE;
36 void OnWriteStarted(bool success, const std::string& error);
39 class ImageWriterPrivateCancelWriteFunction
40 : public ChromeAsyncExtensionFunction {
42 DECLARE_EXTENSION_FUNCTION("imageWriterPrivate.cancelWrite",
43 IMAGEWRITER_CANCELWRITE)
44 ImageWriterPrivateCancelWriteFunction();
47 virtual ~ImageWriterPrivateCancelWriteFunction();
48 virtual bool RunImpl() OVERRIDE;
49 void OnWriteCancelled(bool success, const std::string& error);
52 class ImageWriterPrivateDestroyPartitionsFunction
53 : public ChromeAsyncExtensionFunction {
55 DECLARE_EXTENSION_FUNCTION("imageWriterPrivate.destroyPartitions",
56 IMAGEWRITER_DESTROYPARTITIONS)
57 ImageWriterPrivateDestroyPartitionsFunction();
60 virtual ~ImageWriterPrivateDestroyPartitionsFunction();
61 virtual bool RunImpl() OVERRIDE;
64 class ImageWriterPrivateListRemovableStorageDevicesFunction
65 : public ChromeAsyncExtensionFunction {
67 DECLARE_EXTENSION_FUNCTION("imageWriterPrivate.listRemovableStorageDevices",
68 IMAGEWRITER_LISTREMOVABLESTORAGEDEVICES);
69 ImageWriterPrivateListRemovableStorageDevicesFunction();
72 virtual ~ImageWriterPrivateListRemovableStorageDevicesFunction();
73 virtual bool RunImpl() OVERRIDE;
74 void OnDeviceListReady(scoped_refptr<StorageDeviceList> device_list,
78 } // namespace extensions
80 #endif // CHROME_BROWSER_EXTENSIONS_API_IMAGE_WRITER_PRIVATE_IMAGE_WRITER_PRIVATE_API_H_