Index: extensions/browser/external_provider_interface.h |
diff --git a/extensions/browser/external_provider_interface.h b/extensions/browser/external_provider_interface.h |
index 801f4ede5640de99259898da3c2b0e22cbb9e336..19102c045e2cf0285e1cd5d5fd6a51f542f4399a 100644 |
--- a/extensions/browser/external_provider_interface.h |
+++ b/extensions/browser/external_provider_interface.h |
@@ -13,12 +13,14 @@ |
class GURL; |
namespace base { |
-class FilePath; |
class Version; |
} |
namespace extensions { |
+struct ExternalInstallInfoFile; |
+struct ExternalInstallInfoUpdateUrl; |
+ |
// This class is an abstract class for implementing external extensions |
// providers. |
class ExternalProviderInterface { |
@@ -35,24 +37,14 @@ class ExternalProviderInterface { |
// proceed if the extension is already installed from a higher priority |
// location. |
virtual bool OnExternalExtensionFileFound( |
- const std::string& id, |
- const base::Version* version, |
- const base::FilePath& path, |
- Manifest::Location location, |
- int creation_flags, |
- bool mark_acknowledged, |
- bool install_immediately) = 0; |
+ const ExternalInstallInfoFile& info) = 0; |
// Return true if the extension install will proceed. Install might not |
// proceed if the extension is already installed from a higher priority |
// location. |
virtual bool OnExternalExtensionUpdateUrlFound( |
- const std::string& id, |
- const std::string& install_parameter, |
- const GURL& update_url, |
- Manifest::Location location, |
- int creation_flags, |
- bool mark_acknowledged) = 0; |
+ const ExternalInstallInfoUpdateUrl& info, |
+ bool is_initial_load) = 0; |
// Called after all the external extensions have been reported |
// through the above two methods. |provider| is a pointer to the |
@@ -62,6 +54,17 @@ class ExternalProviderInterface { |
virtual void OnExternalProviderReady( |
const ExternalProviderInterface* provider) = 0; |
+ // Once this provider becomes "ready", it can send additional external |
+ // extensions it learns about later on through |
+ // OnExternalExtensionUpdateUrlFound() or OnExternalExtensionFileFound(). |
+ // This method will be called each time the provider finds a set of |
+ // updated external extensions. |
+ virtual void OnExternalProviderUpdateComplete( |
+ const ExternalProviderInterface* provider, |
+ const ScopedVector<ExternalInstallInfoUpdateUrl>& update_url_extensions, |
+ const ScopedVector<ExternalInstallInfoFile>& file_extensions, |
+ const std::set<std::string>& removed_extensions) = 0; |
+ |
protected: |
virtual ~VisitorInterface() {} |
}; |