OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 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_SYSTEM_STORAGE_SYSTEM_STORAGE_API_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_API_SYSTEM_STORAGE_SYSTEM_STORAGE_API_H_ |
6 #define CHROME_BROWSER_EXTENSIONS_API_SYSTEM_STORAGE_SYSTEM_STORAGE_API_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_API_SYSTEM_STORAGE_SYSTEM_STORAGE_API_H_ |
7 | 7 |
8 #include "chrome/browser/extensions/api/system_storage/storage_info_provider.h" | 8 #include "chrome/browser/extensions/api/system_storage/storage_info_provider.h" |
9 #include "components/storage_monitor/storage_monitor.h" | 9 #include "components/storage_monitor/storage_monitor.h" |
10 #include "extensions/browser/extension_function.h" | 10 #include "extensions/browser/extension_function.h" |
11 | 11 |
12 namespace extensions { | 12 namespace extensions { |
13 | 13 |
14 // Implementation of the systeminfo.storage.get API. It is an asynchronous | 14 // Implementation of the systeminfo.storage.get API. It is an asynchronous |
15 // call relative to browser UI thread. | 15 // call relative to browser UI thread. |
16 class SystemStorageGetInfoFunction : public AsyncExtensionFunction { | 16 class SystemStorageGetInfoFunction : public AsyncExtensionFunction { |
17 public: | 17 public: |
18 DECLARE_EXTENSION_FUNCTION("system.storage.getInfo", SYSTEM_STORAGE_GETINFO); | 18 DECLARE_EXTENSION_FUNCTION("system.storage.getInfo", SYSTEM_STORAGE_GETINFO); |
19 SystemStorageGetInfoFunction(); | 19 SystemStorageGetInfoFunction(); |
20 | 20 |
21 private: | 21 private: |
22 virtual ~SystemStorageGetInfoFunction(); | 22 virtual ~SystemStorageGetInfoFunction(); |
23 virtual bool RunImpl() OVERRIDE; | 23 virtual bool RunAsync() OVERRIDE; |
24 | 24 |
25 void OnGetStorageInfoCompleted(bool success); | 25 void OnGetStorageInfoCompleted(bool success); |
26 }; | 26 }; |
27 | 27 |
28 class SystemStorageEjectDeviceFunction | 28 class SystemStorageEjectDeviceFunction |
29 : public AsyncExtensionFunction { | 29 : public AsyncExtensionFunction { |
30 public: | 30 public: |
31 DECLARE_EXTENSION_FUNCTION("system.storage.ejectDevice", | 31 DECLARE_EXTENSION_FUNCTION("system.storage.ejectDevice", |
32 SYSTEM_STORAGE_EJECTDEVICE); | 32 SYSTEM_STORAGE_EJECTDEVICE); |
33 | 33 |
34 protected: | 34 protected: |
35 virtual ~SystemStorageEjectDeviceFunction(); | 35 virtual ~SystemStorageEjectDeviceFunction(); |
36 | 36 |
37 // AsyncExtensionFunction overrides. | 37 // AsyncExtensionFunction overrides. |
38 virtual bool RunImpl() OVERRIDE; | 38 virtual bool RunAsync() OVERRIDE; |
39 | 39 |
40 private: | 40 private: |
41 void OnStorageMonitorInit(const std::string& transient_device_id); | 41 void OnStorageMonitorInit(const std::string& transient_device_id); |
42 | 42 |
43 // Eject device request handler. | 43 // Eject device request handler. |
44 void HandleResponse(storage_monitor::StorageMonitor::EjectStatus status); | 44 void HandleResponse(storage_monitor::StorageMonitor::EjectStatus status); |
45 }; | 45 }; |
46 | 46 |
47 class SystemStorageGetAvailableCapacityFunction | 47 class SystemStorageGetAvailableCapacityFunction |
48 : public AsyncExtensionFunction { | 48 : public AsyncExtensionFunction { |
49 public: | 49 public: |
50 DECLARE_EXTENSION_FUNCTION("system.storage.getAvailableCapacity", | 50 DECLARE_EXTENSION_FUNCTION("system.storage.getAvailableCapacity", |
51 SYSTEM_STORAGE_GETAVAILABLECAPACITY); | 51 SYSTEM_STORAGE_GETAVAILABLECAPACITY); |
52 SystemStorageGetAvailableCapacityFunction(); | 52 SystemStorageGetAvailableCapacityFunction(); |
53 | 53 |
54 private: | 54 private: |
55 void OnStorageMonitorInit(const std::string& transient_id); | 55 void OnStorageMonitorInit(const std::string& transient_id); |
56 void OnQueryCompleted(const std::string& transient_id, | 56 void OnQueryCompleted(const std::string& transient_id, |
57 double available_capacity); | 57 double available_capacity); |
58 virtual ~SystemStorageGetAvailableCapacityFunction(); | 58 virtual ~SystemStorageGetAvailableCapacityFunction(); |
59 virtual bool RunImpl() OVERRIDE; | 59 virtual bool RunAsync() OVERRIDE; |
60 }; | 60 }; |
61 | 61 |
62 } // namespace extensions | 62 } // namespace extensions |
63 | 63 |
64 #endif // CHROME_BROWSER_EXTENSIONS_API_SYSTEM_STORAGE_SYSTEM_STORAGE_API_H_ | 64 #endif // CHROME_BROWSER_EXTENSIONS_API_SYSTEM_STORAGE_SYSTEM_STORAGE_API_H_ |
OLD | NEW |