| Index: chrome/browser/extensions/external_extension_provider.h
|
| diff --git a/chrome/browser/extensions/external_extension_provider.h b/chrome/browser/extensions/external_extension_provider.h
|
| index 5bcce1d5f4d7d150d3b50304038a204900330f5c..8b4d7f288b2fca3e9f5fba1f375140b92ba71503 100644
|
| --- a/chrome/browser/extensions/external_extension_provider.h
|
| +++ b/chrome/browser/extensions/external_extension_provider.h
|
| @@ -6,6 +6,9 @@
|
| #define CHROME_BROWSER_EXTENSIONS_EXTERNAL_EXTENSION_PROVIDER_H_
|
| #pragma once
|
|
|
| +#include <vector>
|
| +
|
| +#include "base/linked_ptr.h"
|
| #include "chrome/common/extensions/extension.h"
|
|
|
| class FilePath;
|
| @@ -32,16 +35,23 @@ class ExternalExtensionProvider {
|
| const GURL& update_url,
|
| Extension::Location location) = 0;
|
|
|
| + // Called after all the external extensions have been reported through
|
| + // the above two methods.
|
| + virtual void OnExternalProviderReady() = 0;
|
| +
|
| protected:
|
| virtual ~Visitor() {}
|
| };
|
|
|
| virtual ~ExternalExtensionProvider() {}
|
|
|
| - // Enumerate registered extension, calling OnExternalExtensionFound on
|
| - // the |visitor| object for each registered extension found. |ids_to_ignore|
|
| - // contains a list of extension ids that should not result in a call back.
|
| - virtual void VisitRegisteredExtension(Visitor* visitor) const = 0;
|
| + // The visitor (ExtensionsService) calls this function before it goes away.
|
| + virtual void ServiceShutdown() = 0;
|
| +
|
| + // Enumerate registered extensions, calling
|
| + // OnExternalExtension(File|UpdateUrl)Found on the |visitor| object for each
|
| + // registered extension found.
|
| + virtual void VisitRegisteredExtension() const = 0;
|
|
|
| // Test if this provider has an extension with id |id| registered.
|
| virtual bool HasExtension(const std::string& id) const = 0;
|
| @@ -53,6 +63,13 @@ class ExternalExtensionProvider {
|
| virtual bool GetExtensionDetails(const std::string& id,
|
| Extension::Location* location,
|
| scoped_ptr<Version>* version) const = 0;
|
| +
|
| + // Determines if this provider had loaded the list of external extensions
|
| + // from its source.
|
| + virtual bool IsReady() = 0;
|
| };
|
|
|
| +typedef std::vector<linked_ptr<ExternalExtensionProvider> >
|
| + ProviderCollection;
|
| +
|
| #endif // CHROME_BROWSER_EXTENSIONS_EXTERNAL_EXTENSION_PROVIDER_H_
|
|
|