OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 EXTENSIONS_COMMON_MANIFEST_HANDLERS_SHARED_MODULE_INFO_H_ | 5 #ifndef EXTENSIONS_COMMON_MANIFEST_HANDLERS_SHARED_MODULE_INFO_H_ |
6 #define EXTENSIONS_COMMON_MANIFEST_HANDLERS_SHARED_MODULE_INFO_H_ | 6 #define EXTENSIONS_COMMON_MANIFEST_HANDLERS_SHARED_MODULE_INFO_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 18 matching lines...) Expand all Loading... | |
29 // Utility functions. | 29 // Utility functions. |
30 static void ParseImportedPath(const std::string& path, | 30 static void ParseImportedPath(const std::string& path, |
31 std::string* import_id, | 31 std::string* import_id, |
32 std::string* import_relative_path); | 32 std::string* import_relative_path); |
33 static bool IsImportedPath(const std::string& path); | 33 static bool IsImportedPath(const std::string& path); |
34 | 34 |
35 // Functions relating to exporting resources. | 35 // Functions relating to exporting resources. |
36 static bool IsSharedModule(const Extension* extension); | 36 static bool IsSharedModule(const Extension* extension); |
37 static bool IsExportAllowed(const Extension* extension, | 37 static bool IsExportAllowed(const Extension* extension, |
38 const std::string& relative_path); | 38 const std::string& relative_path); |
39 static bool IsExportAllowedByWhitelist(const Extension* extension, | |
40 const std::string& other_id); | |
asargent_no_longer_on_chrome
2014/05/01 17:50:15
Can you add a comment here mentioning that in the
elijahtaylor1
2014/05/02 00:06:06
Done.
| |
39 | 41 |
40 // Functions relating to importing resources. | 42 // Functions relating to importing resources. |
41 static bool ImportsExtensionById(const Extension* extension, | 43 static bool ImportsExtensionById(const Extension* extension, |
42 const std::string& other_id); | 44 const std::string& other_id); |
43 static bool ImportsModules(const Extension* extension); | 45 static bool ImportsModules(const Extension* extension); |
44 static const std::vector<ImportInfo>& GetImports(const Extension* extension); | 46 static const std::vector<ImportInfo>& GetImports(const Extension* extension); |
45 | 47 |
46 private: | 48 private: |
47 // This extension exports the following resources to other extensions. | 49 // This extension exports the following resources to other extensions. |
48 URLPatternSet exported_set_; | 50 URLPatternSet exported_set_; |
49 | 51 |
52 // Optional list of extensions from which importing is allowed. If no | |
53 // whitelist is specified, all extensions can import this extension. | |
asargent_no_longer_on_chrome
2014/05/01 17:50:15
Oh, ok, I guess you say that right here. Maybe jus
elijahtaylor1
2014/05/02 00:06:06
Done.
| |
54 std::set<std::string> export_whitelist_; | |
55 | |
50 // Optional list of module imports of other extensions. | 56 // Optional list of module imports of other extensions. |
51 std::vector<ImportInfo> imports_; | 57 std::vector<ImportInfo> imports_; |
52 }; | 58 }; |
53 | 59 |
54 // Parses all import/export keys in the manifest. | 60 // Parses all import/export keys in the manifest. |
55 class SharedModuleHandler : public ManifestHandler { | 61 class SharedModuleHandler : public ManifestHandler { |
56 public: | 62 public: |
57 SharedModuleHandler(); | 63 SharedModuleHandler(); |
58 virtual ~SharedModuleHandler(); | 64 virtual ~SharedModuleHandler(); |
59 | 65 |
60 virtual bool Parse(Extension* extension, base::string16* error) OVERRIDE; | 66 virtual bool Parse(Extension* extension, base::string16* error) OVERRIDE; |
61 virtual bool Validate(const Extension* extension, | 67 virtual bool Validate(const Extension* extension, |
62 std::string* error, | 68 std::string* error, |
63 std::vector<InstallWarning>* warnings) const OVERRIDE; | 69 std::vector<InstallWarning>* warnings) const OVERRIDE; |
64 | 70 |
65 private: | 71 private: |
66 virtual const std::vector<std::string> Keys() const OVERRIDE; | 72 virtual const std::vector<std::string> Keys() const OVERRIDE; |
67 }; | 73 }; |
68 | 74 |
69 } // namespace extensions | 75 } // namespace extensions |
70 | 76 |
71 #endif // EXTENSIONS_COMMON_MANIFEST_HANDLERS_SHARED_MODULE_INFO_H_ | 77 #endif // EXTENSIONS_COMMON_MANIFEST_HANDLERS_SHARED_MODULE_INFO_H_ |
OLD | NEW |