Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(289)

Side by Side Diff: chrome/browser/extensions/extension_service.h

Issue 6965018: Install CRX updates one at a time. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Polish Created 9 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #pragma once 7 #pragma once
8 8
9 #include <map> 9 #include <map>
10 #include <set> 10 #include <set>
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 class ExtensionServiceInterface { 57 class ExtensionServiceInterface {
58 public: 58 public:
59 // A function that returns true if the given extension should be 59 // A function that returns true if the given extension should be
60 // included and false if it should be filtered out. Identical to 60 // included and false if it should be filtered out. Identical to
61 // PendingExtensionInfo::ShouldAllowInstallPredicate. 61 // PendingExtensionInfo::ShouldAllowInstallPredicate.
62 typedef bool (*ExtensionFilter)(const Extension&); 62 typedef bool (*ExtensionFilter)(const Extension&);
63 63
64 virtual ~ExtensionServiceInterface() {} 64 virtual ~ExtensionServiceInterface() {}
65 virtual const ExtensionList* extensions() const = 0; 65 virtual const ExtensionList* extensions() const = 0;
66 virtual PendingExtensionManager* pending_extension_manager() = 0; 66 virtual PendingExtensionManager* pending_extension_manager() = 0;
67 virtual void UpdateExtension(const std::string& id, 67
68 const FilePath& path, 68 // Install an update. Return true if the install can be started.
69 const GURL& download_url) = 0; 69 // Set out_crx_installer to the installer if one was started.
70 virtual bool UpdateExtension(
71 const std::string& id,
72 const FilePath& path,
73 const GURL& download_url,
74 CrxInstaller** out_crx_installer) = 0;
70 virtual const Extension* GetExtensionById(const std::string& id, 75 virtual const Extension* GetExtensionById(const std::string& id,
71 bool include_disabled) const = 0; 76 bool include_disabled) const = 0;
72 virtual const Extension* GetInstalledExtension( 77 virtual const Extension* GetInstalledExtension(
73 const std::string& id) const = 0; 78 const std::string& id) const = 0;
74 79
75 virtual bool IsExtensionEnabled(const std::string& extension_id) const = 0; 80 virtual bool IsExtensionEnabled(const std::string& extension_id) const = 0;
76 virtual bool IsExternalExtensionUninstalled( 81 virtual bool IsExternalExtensionUninstalled(
77 const std::string& extension_id) const = 0; 82 const std::string& extension_id) const = 0;
78 83
79 virtual void UpdateExtensionBlacklist( 84 virtual void UpdateExtensionBlacklist(
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 260
256 // Looks up an extension by ID, regardless of whether it's enabled, 261 // Looks up an extension by ID, regardless of whether it's enabled,
257 // disabled, or terminated. 262 // disabled, or terminated.
258 virtual const Extension* GetInstalledExtension( 263 virtual const Extension* GetInstalledExtension(
259 const std::string& id) const OVERRIDE; 264 const std::string& id) const OVERRIDE;
260 265
261 // Updates a currently-installed extension with the contents from 266 // Updates a currently-installed extension with the contents from
262 // |extension_path|. 267 // |extension_path|.
263 // TODO(aa): This method can be removed. ExtensionUpdater could use 268 // TODO(aa): This method can be removed. ExtensionUpdater could use
264 // CrxInstaller directly instead. 269 // CrxInstaller directly instead.
265 virtual void UpdateExtension(const std::string& id, 270 virtual bool UpdateExtension(
266 const FilePath& extension_path, 271 const std::string& id,
267 const GURL& download_url) OVERRIDE; 272 const FilePath& extension_path,
273 const GURL& download_url,
274 CrxInstaller** out_crx_installer) OVERRIDE;
268 275
269 // Reloads the specified extension. 276 // Reloads the specified extension.
270 void ReloadExtension(const std::string& extension_id); 277 void ReloadExtension(const std::string& extension_id);
271 278
272 // Uninstalls the specified extension. Callers should only call this method 279 // Uninstalls the specified extension. Callers should only call this method
273 // with extensions that exist. |external_uninstall| is a magical parameter 280 // with extensions that exist. |external_uninstall| is a magical parameter
274 // that is only used to send information to ExtensionPrefs, which external 281 // that is only used to send information to ExtensionPrefs, which external
275 // callers should never set to true. 282 // callers should never set to true.
276 // TODO(aa): Remove |external_uninstall| -- this information should be passed 283 // TODO(aa): Remove |external_uninstall| -- this information should be passed
277 // to ExtensionPrefs some other way. 284 // to ExtensionPrefs some other way.
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after
696 NaClModuleInfoList nacl_module_list_; 703 NaClModuleInfoList nacl_module_list_;
697 704
698 FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest, 705 FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest,
699 InstallAppsWithUnlimtedStorage); 706 InstallAppsWithUnlimtedStorage);
700 FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest, 707 FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest,
701 InstallAppsAndCheckStorageProtection); 708 InstallAppsAndCheckStorageProtection);
702 DISALLOW_COPY_AND_ASSIGN(ExtensionService); 709 DISALLOW_COPY_AND_ASSIGN(ExtensionService);
703 }; 710 };
704 711
705 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_SERVICE_H_ 712 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_SERVICE_H_
OLDNEW
« no previous file with comments | « chrome/browser/extensions/crx_installer.h ('k') | chrome/browser/extensions/extension_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698