OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CHROME_BROWSER_EXTENSIONS_EXTENSION_SERVICE_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_SERVICE_H_ |
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_SERVICE_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_SERVICE_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 #include <map> | 9 #include <map> |
10 #include <set> | 10 #include <set> |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
120 virtual base::SequencedTaskRunner* GetFileTaskRunner() = 0; | 120 virtual base::SequencedTaskRunner* GetFileTaskRunner() = 0; |
121 }; | 121 }; |
122 | 122 |
123 // Manages installed and running Chromium extensions. | 123 // Manages installed and running Chromium extensions. |
124 class ExtensionService | 124 class ExtensionService |
125 : public ExtensionServiceInterface, | 125 : public ExtensionServiceInterface, |
126 public extensions::ExternalProviderInterface::VisitorInterface, | 126 public extensions::ExternalProviderInterface::VisitorInterface, |
127 public content::NotificationObserver, | 127 public content::NotificationObserver, |
128 public extensions::Blacklist::Observer { | 128 public extensions::Blacklist::Observer { |
129 public: | 129 public: |
130 // Returns the Extension of an extension from a given url or NULL if the url | 130 // Returns the Extension of an extension from a given url or NULL if the url |
Finnur
2013/12/16 21:42:08
The Extension of an extension? We must go deeper!
asargent_no_longer_on_chrome
2013/12/16 22:01:59
I actually picked up this change from someone else
| |
131 // doesn't belong to an installed extension. This may be a hosted app extent | 131 // doesn't belong to an installed extension. This may be a hosted app extent |
132 // or a chrome-extension:// url. | 132 // or a chrome-extension:// url. |
133 const extensions::Extension* GetInstalledExtensionByUrl( | 133 const extensions::Extension* GetInstalledExtensionByUrl( |
134 const GURL& url) const; | 134 const GURL& url) const; |
135 | 135 |
136 // Returns the Extension of hosted or packaged apps, NULL otherwise. | 136 // Returns the Extension of hosted or packaged apps, NULL otherwise. |
137 const extensions::Extension* GetInstalledApp(const GURL& url) const; | 137 const extensions::Extension* GetInstalledApp(const GURL& url) const; |
138 | 138 |
139 // Returns whether the URL is from either a hosted or packaged app. | 139 // Returns whether the URL is from either a hosted or packaged app. |
140 bool IsInstalledApp(const GURL& url) const; | 140 bool IsInstalledApp(const GURL& url) const; |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
202 | 202 |
203 // Getter and setter for the flag that specifies if the extension has used | 203 // Getter and setter for the flag that specifies if the extension has used |
204 // the webrequest API. | 204 // the webrequest API. |
205 // TODO(mpcomplete): remove. http://crbug.com/100411 | 205 // TODO(mpcomplete): remove. http://crbug.com/100411 |
206 bool HasUsedWebRequest(const extensions::Extension* extension) const; | 206 bool HasUsedWebRequest(const extensions::Extension* extension) const; |
207 void SetHasUsedWebRequest(const extensions::Extension* extension, bool value); | 207 void SetHasUsedWebRequest(const extensions::Extension* extension, bool value); |
208 | 208 |
209 // Initialize and start all installed extensions. | 209 // Initialize and start all installed extensions. |
210 void Init(); | 210 void Init(); |
211 | 211 |
212 // Attempts to verify all extensions using the InstallVerifier. | |
213 void VerifyAllExtensions(); | |
214 | |
215 // Once the verifier work is finished, we may want to re-check management | |
216 // policy if |success| indicates the verifier got a new signature back. | |
217 void FinishVerifyAllExtensions(bool success); | |
218 | |
212 // Called when the associated Profile is going to be destroyed. | 219 // Called when the associated Profile is going to be destroyed. |
213 void Shutdown(); | 220 void Shutdown(); |
214 | 221 |
215 // Look up an extension by ID. Does not include terminated | 222 // Look up an extension by ID. Does not include terminated |
216 // extensions. | 223 // extensions. |
217 virtual const extensions::Extension* GetExtensionById( | 224 virtual const extensions::Extension* GetExtensionById( |
218 const std::string& id, bool include_disabled) const OVERRIDE; | 225 const std::string& id, bool include_disabled) const OVERRIDE; |
219 | 226 |
220 enum IncludeFlag { | 227 enum IncludeFlag { |
221 INCLUDE_NONE = 0, | 228 INCLUDE_NONE = 0, |
(...skipping 628 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
850 #endif | 857 #endif |
851 | 858 |
852 FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest, | 859 FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest, |
853 InstallAppsWithUnlimtedStorage); | 860 InstallAppsWithUnlimtedStorage); |
854 FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest, | 861 FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest, |
855 InstallAppsAndCheckStorageProtection); | 862 InstallAppsAndCheckStorageProtection); |
856 DISALLOW_COPY_AND_ASSIGN(ExtensionService); | 863 DISALLOW_COPY_AND_ASSIGN(ExtensionService); |
857 }; | 864 }; |
858 | 865 |
859 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_SERVICE_H_ | 866 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_SERVICE_H_ |
OLD | NEW |