Index: chrome/common/extensions/extension.h |
diff --git a/chrome/common/extensions/extension.h b/chrome/common/extensions/extension.h |
index 10b143023e91713896440f3ee62abf76bd1a9949..63da5421ed6574ee74b952ce1519727a105865a7 100644 |
--- a/chrome/common/extensions/extension.h |
+++ b/chrome/common/extensions/extension.h |
@@ -113,6 +113,11 @@ class Extension : public base::RefCountedThreadSafe<Extension> { |
std::string mime_type; |
}; |
+ struct ImportInfo { |
+ std::string extension_id; |
+ std::string min_version; |
+ }; |
+ |
// A base class for parsed manifest data that APIs want to store on |
// the extension. Related to base::SupportsUserData, but with an immutable |
// thread-safe interface to match Extension. |
@@ -466,6 +471,13 @@ class Extension : public base::RefCountedThreadSafe<Extension> { |
// Theme-related. |
bool is_theme() const; |
+ static void ParseImportedPath(const std::string& path, |
+ std::string* import_id, |
+ std::string* import_relative_path); |
+ static bool IsImportedPath(const std::string& path); |
+ bool Imports(const std::string& other_id) const; |
+ bool IsExportAllowed(const std::string& relative_path) const; |
+ |
private: |
friend class base::RefCountedThreadSafe<Extension>; |
@@ -537,6 +549,7 @@ class Extension : public base::RefCountedThreadSafe<Extension> { |
bool LoadLaunchURL(string16* error); |
bool LoadSharedFeatures(string16* error); |
+ bool LoadSharedModuleFeatures(string16* error); |
Matt Perry
2013/04/24 21:22:11
All the shared module stuff should move to its own
|
bool LoadDescription(string16* error); |
bool LoadManifestVersion(string16* error); |
bool LoadNaClModules(string16* error); |
@@ -604,6 +617,12 @@ class Extension : public base::RefCountedThreadSafe<Extension> { |
// The extension's required / default set of permissions. |
scoped_refptr<const PermissionSet> required_permission_set_; |
+ // This extension exports the following resources to other extensions. |
+ URLPatternSet exported_set_; |
+ |
+ // Optional list of module imports of other extensions. |
+ std::vector<ImportInfo> imports_; |
+ |
// Any warnings that occurred when trying to create/parse the extension. |
std::vector<InstallWarning> install_warnings_; |