OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_ACTIVE_INSTALL_DATA_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_ACTIVE_INSTALL_DATA_H_ |
6 #define CHROME_BROWSER_EXTENSIONS_ACTIVE_INSTALL_DATA_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_ACTIVE_INSTALL_DATA_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
11 #include "base/scoped_observer.h" | 11 #include "base/scoped_observer.h" |
12 #include "chrome/browser/extensions/install_observer.h" | 12 #include "chrome/browser/extensions/install_observer.h" |
13 | 13 |
14 namespace extensions { | 14 namespace extensions { |
15 | 15 |
16 class InstallTracker; | 16 class InstallTracker; |
17 | 17 |
18 // Details of an active extension install. | 18 // Details of an active extension install. |
19 struct ActiveInstallData { | 19 struct ActiveInstallData { |
20 public: | 20 public: |
21 ActiveInstallData(); | 21 ActiveInstallData(); |
22 explicit ActiveInstallData(const std::string& extension_id); | 22 explicit ActiveInstallData(const std::string& extension_id); |
23 | 23 |
24 std::string extension_id; | 24 std::string extension_id; |
25 int percent_downloaded; | 25 int percent_downloaded; |
26 bool is_ephemeral; | |
27 }; | 26 }; |
28 | 27 |
29 // Registers and deregisters and an active extension install with the | 28 // Registers and deregisters and an active extension install with the |
30 // InstallTracker. | 29 // InstallTracker. |
31 class ScopedActiveInstall : public InstallObserver { | 30 class ScopedActiveInstall : public InstallObserver { |
32 public: | 31 public: |
33 // This constructor registers an active install with the InstallTracker. | 32 // This constructor registers an active install with the InstallTracker. |
34 ScopedActiveInstall(InstallTracker* tracker, | 33 ScopedActiveInstall(InstallTracker* tracker, |
35 const ActiveInstallData& install_data); | 34 const ActiveInstallData& install_data); |
36 | 35 |
(...skipping 17 matching lines...) Expand all Loading... |
54 InstallTracker* tracker_; | 53 InstallTracker* tracker_; |
55 ScopedObserver<InstallTracker, InstallObserver> tracker_observer_; | 54 ScopedObserver<InstallTracker, InstallObserver> tracker_observer_; |
56 std::string extension_id_; | 55 std::string extension_id_; |
57 | 56 |
58 DISALLOW_COPY_AND_ASSIGN(ScopedActiveInstall); | 57 DISALLOW_COPY_AND_ASSIGN(ScopedActiveInstall); |
59 }; | 58 }; |
60 | 59 |
61 } // namespace extensions | 60 } // namespace extensions |
62 | 61 |
63 #endif // CHROME_BROWSER_EXTENSIONS_ACTIVE_INSTALL_DATA_H_ | 62 #endif // CHROME_BROWSER_EXTENSIONS_ACTIVE_INSTALL_DATA_H_ |
OLD | NEW |