Index: content/browser/download/download_create_info.h |
diff --git a/content/browser/download/download_create_info.h b/content/browser/download/download_create_info.h |
index 1767e45eebc8e82a7d3f427fc00f09d55dc43e24..87285e04453b7e3e771d715324ac12b62020671a 100644 |
--- a/content/browser/download/download_create_info.h |
+++ b/content/browser/download/download_create_info.h |
@@ -16,6 +16,7 @@ |
#include "content/browser/download/download_file.h" |
#include "content/browser/download/download_request_handle.h" |
#include "content/common/content_export.h" |
+#include "content/public/browser/download_interrupt_reasons.h" |
#include "content/public/browser/download_save_info.h" |
#include "net/log/net_log.h" |
#include "ui/base/page_transition_types.h" |
@@ -27,7 +28,6 @@ namespace content { |
// want to pass |DownloadItem|s between threads. |
struct CONTENT_EXPORT DownloadCreateInfo { |
DownloadCreateInfo(const base::Time& start_time, |
- int64_t total_bytes, |
const net::BoundNetLog& bound_net_log, |
scoped_ptr<DownloadSaveInfo> save_info); |
DownloadCreateInfo(); |
@@ -39,6 +39,9 @@ struct CONTENT_EXPORT DownloadCreateInfo { |
// redirection by the server for |url_chain|. |
const GURL& url() const; |
+ // The ID of the download. |
+ uint32_t download_id; |
+ |
// The chain of redirects that leading up to and including the final URL. |
std::vector<GURL> url_chain; |
@@ -54,17 +57,38 @@ struct CONTENT_EXPORT DownloadCreateInfo { |
// The time when the download started. |
base::Time start_time; |
- // The total download size. |
- int64_t total_bytes; |
- |
- // The ID of the download. |
- uint32_t download_id; |
- |
// True if the download was initiated by user action. |
bool has_user_gesture; |
ui::PageTransition transition_type; |
+ // The remote IP address where the download was fetched from. Copied from |
+ // UrlRequest::GetSocketAddress(). |
+ std::string remote_address; |
+ |
+ // If the download is initially created in an interrupted state (because the |
+ // response was in error), then |result| would be something other than |
+ // INTERRUPT_REASON_NONE. |
+ DownloadInterruptReason result; |
+ |
+ // The download file save info. |
+ scoped_ptr<DownloadSaveInfo> save_info; |
+ |
+ // The handle to the URLRequest sourcing this download. |
+ scoped_ptr<DownloadRequestHandleInterface> request_handle; |
+ |
+ // The request's |BoundNetLog|, for "source_dependency" linking with the |
+ // download item's. |
+ const net::BoundNetLog request_bound_net_log; |
+ |
+ // --------------------------------------------------------------------------- |
+ // The remaining fields are Entity-body properties. These are only set if |
+ // |result| is DOWNLOAD_INTERRUPT_REASON_NONE. |
+ // --------------------------------------------------------------------------- |
+ |
+ // The total download size. |
+ int64_t total_bytes; |
+ |
// The content-disposition string from the response header. |
std::string content_disposition; |
@@ -81,23 +105,9 @@ struct CONTENT_EXPORT DownloadCreateInfo { |
// "If-Unmodified-Since" comparison. |
std::string last_modified; |
- // For continuing a download, the ETAG of the file. |
+ // For continuing a download, the ETag of the file. |
std::string etag; |
- // The download file save info. |
- scoped_ptr<DownloadSaveInfo> save_info; |
- |
- // The remote IP address where the download was fetched from. Copied from |
- // UrlRequest::GetSocketAddress(). |
- std::string remote_address; |
- |
- // The handle to the URLRequest sourcing this download. |
- scoped_ptr<DownloadRequestHandleInterface> request_handle; |
- |
- // The request's |BoundNetLog|, for "source_dependency" linking with the |
- // download item's. |
- const net::BoundNetLog request_bound_net_log; |
- |
private: |
DISALLOW_COPY_AND_ASSIGN(DownloadCreateInfo); |
}; |