summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extensions_service.h
diff options
context:
space:
mode:
authorasargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-28 05:58:05 +0000
committerasargent@chromium.org <asargent@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-01-28 05:58:05 +0000
commit5ef47ec0d8278b6ff2c663299a41fa28e474a896 (patch)
treed2308c829db73df9db6306a90ab5c363a35fe190 /chrome/browser/extensions/extensions_service.h
parentfb40ec7a037ca4da04eb2d3eafe418bd18df59a1 (diff)
downloadchromium_src-5ef47ec0d8278b6ff2c663299a41fa28e474a896.zip
chromium_src-5ef47ec0d8278b6ff2c663299a41fa28e474a896.tar.gz
chromium_src-5ef47ec0d8278b6ff2c663299a41fa28e474a896.tar.bz2
Refactor extension autoupdater.
This includes two changes: 1) Stop sending the Omaha UID to the gallery in favor of a "ping" parameter included at most once per day in a update manifest fetch, indicating the number of days since the last time we sent the ping parameter. The calculation of this parameter is based on the offset from now to a value in the *previous* response from the server where it indicated it's notion of when that day had started. 2) Batch update manifest requests for extensions with the same update url. The server and protocol have supported this for a while but this is the first time we've added support in the client. BUG=b/2367191 TEST=Extension updates should still work normally. Review URL: http://codereview.chromium.org/558005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37383 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extensions_service.h')
-rw-r--r--chrome/browser/extensions/extensions_service.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/chrome/browser/extensions/extensions_service.h b/chrome/browser/extensions/extensions_service.h
index 4b18c90..f71f044 100644
--- a/chrome/browser/extensions/extensions_service.h
+++ b/chrome/browser/extensions/extensions_service.h
@@ -51,6 +51,12 @@ class ExtensionUpdateService {
virtual void UpdateExtensionBlacklist(
const std::vector<std::string>& blacklist) = 0;
virtual bool HasInstalledExtensions() = 0;
+
+ // These set/get a server-provided time representing the start of the last day
+ // that we sent the 'ping' parameter during an update check.
+ virtual void SetLastPingDay(const std::string& extension_id,
+ const base::Time& time) = 0;
+ virtual base::Time LastPingDay(const std::string& extension_id) = 0;
};
// Manages installed and running Chromium extensions.
@@ -96,6 +102,11 @@ class ExtensionsService
return !(extensions_.empty() && disabled_extensions_.empty());
}
+ virtual void SetLastPingDay(const std::string& extension_id,
+ const base::Time& time);
+ virtual base::Time LastPingDay(const std::string& extension_id);
+
+
const FilePath& install_directory() const { return install_directory_; }
// Initialize and start all installed extensions.