Chromium Code Reviews| Index: chrome/browser/extensions/install_tracker.h |
| diff --git a/chrome/browser/extensions/install_tracker.h b/chrome/browser/extensions/install_tracker.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..09770e7307dfb8c78aae2f631cb55cc6a08ca28d |
| --- /dev/null |
| +++ b/chrome/browser/extensions/install_tracker.h |
| @@ -0,0 +1,59 @@ |
| +// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_EXTENSIONS_INSTALL_TRACKER_H_ |
| +#define CHROME_BROWSER_EXTENSIONS_INSTALL_TRACKER_H_ |
| + |
| +#include "base/observer_list.h" |
| +#include "chrome/browser/profiles/profile_keyed_service.h" |
| +#include "ui/gfx/image/image_skia.h" |
| + |
| +class Profile; |
| + |
| +namespace extensions { |
| + |
| +class InstallObserver { |
| + public: |
| + virtual void OnBeginExtensionInstall( |
| + const std::string& extension_id, |
| + const std::string& extension_name, |
| + const gfx::ImageSkia& installing_icon, |
| + bool is_app) = 0; |
| + |
| + virtual void OnDownloadProgress(const std::string& extension_id, |
| + int percent_downloaded) = 0; |
| + |
| + virtual void OnInstallFailure( |
|
benwells
2013/02/21 06:15:38
nit: will fit on one line (i think)
koz (OOO until 15th September)
2013/02/25 02:39:28
Done.
|
| + const std::string& extension_id) = 0; |
|
xiyuan
2013/02/21 06:33:17
nit: add a protected virtual destructor.
koz (OOO until 15th September)
2013/02/25 02:39:28
Done.
|
| +}; |
| + |
| +class InstallTracker : public ProfileKeyedService, public InstallObserver { |
|
xiyuan
2013/02/21 06:33:17
InstallTracker probably should not derive from Ins
koz (OOO until 15th September)
2013/02/25 02:39:28
Done.
|
| + public: |
| + explicit InstallTracker(Profile* profile); |
| + virtual ~InstallTracker(); |
| + |
| + // ProfileKeyedService implementation. |
| + virtual void Shutdown() OVERRIDE {} |
|
xiyuan
2013/02/21 06:33:17
Think we can get rid of this since we are not real
koz (OOO until 15th September)
2013/02/25 02:39:28
Done.
|
| + |
| + void AddObserver(InstallObserver* observer); |
| + void RemoveObserver(InstallObserver* observer); |
| + |
| + // InstallObserver overrides. |
| + virtual void OnBeginExtensionInstall( |
| + const std::string& extension_id, |
| + const std::string& extension_name, |
| + const gfx::ImageSkia& installing_icon, |
| + bool is_app) OVERRIDE; |
| + virtual void OnDownloadProgress(const std::string& extension_id, |
| + int percent_downloaded) OVERRIDE; |
| + virtual void OnInstallFailure(const std::string& extension_id) OVERRIDE; |
| + |
| + private: |
| + Profile* profile_; |
|
xiyuan
2013/02/21 06:33:17
This does not seem used anywhere. Think we could g
koz (OOO until 15th September)
2013/02/25 02:39:28
Done.
|
| + ObserverList<InstallObserver> observers_; |
|
xiyuan
2013/02/21 06:33:17
DISALLOW_COPY_AND_ASSIGN(...)
koz (OOO until 15th September)
2013/02/25 02:39:28
Done.
|
| +}; |
| + |
| +} // namespace extensions |
| + |
| +#endif // CHROME_BROWSER_EXTENSIONS_INSTALL_TRACKER_H_ |