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

Unified Diff: content/public/browser/download_persistent_store_info.h

Issue 11363222: Persist download interrupt reason, both target and current paths, and url_chain. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: content/public/browser/download_persistent_store_info.h
diff --git a/content/public/browser/download_persistent_store_info.h b/content/public/browser/download_persistent_store_info.h
index 8ca7de29a899941572364cc56abf07f2d1c7d030..aaabe9b78f704b249c591832a945247b4cc1d8bc 100644
--- a/content/public/browser/download_persistent_store_info.h
+++ b/content/public/browser/download_persistent_store_info.h
@@ -24,24 +24,32 @@ namespace content {
// and read by the DownloadItem.
struct CONTENT_EXPORT DownloadPersistentStoreInfo {
DownloadPersistentStoreInfo();
- DownloadPersistentStoreInfo(const FilePath& path,
- const GURL& url,
+ DownloadPersistentStoreInfo(const FilePath& target_path,
+ const FilePath& current_path,
+ const std::vector<GURL>& url_chain,
const GURL& referrer,
const base::Time& start,
const base::Time& end,
int64 received,
int64 total,
DownloadItem::DownloadState download_state,
+ DownloadInterruptReason interrupt_reason,
int64 handle,
bool download_opened);
~DownloadPersistentStoreInfo(); // For linux-clang.
- // The final path where the download is saved.
- FilePath path;
+ // The target path where the download will go when it's complete.
+ FilePath target_path;
- // The URL from which we are downloading. This is the final URL after any
- // redirection by the server for |url_chain|. Is not changed by UpdateEntry().
- GURL url;
+ // The current path to the download (potentially different from final if
+ // download is in progress or interrupted).
+ FilePath current_path;
+
+ // The URL redirect chain through which we are downloading. The front
+ // is the url that the initial request went to, and the back is the
+ // url from which we ended up getting data. This is not changed by
+ // UpdateEntry().
+ std::vector<GURL> url_chain;
// The URL that referred us.
GURL referrer_url;
@@ -61,6 +69,10 @@ struct CONTENT_EXPORT DownloadPersistentStoreInfo {
// The current state of the download.
DownloadItem::DownloadState state;
+ // The reason the download was interrupted, if
+ // state == DownloadItem::INTERRUPTED
+ DownloadInterruptReason interrupt_reason;
+
// The handle of the download in the database. Is not changed by
// UpdateEntry().
int64 db_handle;

Powered by Google App Engine
This is Rietveld 408576698