diff options
Diffstat (limited to 'content/browser/download/download_resource_handler.h')
-rw-r--r-- | content/browser/download/download_resource_handler.h | 39 |
1 files changed, 6 insertions, 33 deletions
diff --git a/content/browser/download/download_resource_handler.h b/content/browser/download/download_resource_handler.h index 9c8f53d..a628926 100644 --- a/content/browser/download/download_resource_handler.h +++ b/content/browser/download/download_resource_handler.h @@ -9,6 +9,7 @@ #include "base/callback.h" #include "base/memory/scoped_ptr.h" +#include "content/browser/download/download_request_core.h" #include "content/browser/loader/resource_handler.h" #include "content/public/browser/download_interrupt_reasons.h" #include "content/public/browser/download_manager.h" @@ -33,10 +34,6 @@ class CONTENT_EXPORT DownloadResourceHandler public: struct DownloadTabInfo; - // Size of the buffer used between the DownloadResourceHandler and the - // downstream receiver of its output. - static const int kDownloadByteStreamSize; - // started_cb will be called exactly once on the UI thread. // |id| should be invalid if the id should be automatically assigned. DownloadResourceHandler( @@ -87,14 +84,15 @@ class CONTENT_EXPORT DownloadResourceHandler // Arrange for started_cb_ to be called on the UI thread with the // below values, nulling out started_cb_. Should only be called // on the IO thread. - void CallStartedCB(DownloadItem* item, - DownloadInterruptReason interrupt_reason); + void CallStartedCB(DownloadInterruptReason interrupt_reason); + + void OnCoreReadyToRead(); uint32 download_id_; + // This is read only on the IO thread, but may only // be called on the UI thread. DownloadUrlParameters::OnStartedCallback started_cb_; - scoped_ptr<DownloadSaveInfo> save_info_; // Stores information about the download that must be acquired on the UI // thread before StartOnUIThread is called. @@ -104,32 +102,7 @@ class CONTENT_EXPORT DownloadResourceHandler // deletion must occur on the IO thread. scoped_ptr<DownloadTabInfo> tab_info_; - // Data flow - scoped_refptr<net::IOBuffer> read_buffer_; // From URLRequest. - scoped_ptr<ByteStreamWriter> stream_writer_; // To rest of system. - - // Keeps the system from sleeping while this ResourceHandler is alive. If the - // system enters power saving mode while a request is alive, it can cause the - // request to fail and the associated download will be interrupted. - scoped_ptr<PowerSaveBlocker> power_save_blocker_; - - // The following are used to collect stats. - base::TimeTicks download_start_time_; - base::TimeTicks last_read_time_; - base::TimeTicks last_stream_pause_time_; - base::TimeDelta total_pause_time_; - size_t last_buffer_size_; - int64 bytes_read_; - - int pause_count_; - bool was_deferred_; - - // For DCHECKing - bool on_response_started_called_; - - static const int kReadBufSize = 32768; // bytes - static const int kThrottleTimeMs = 200; // milliseconds - + DownloadRequestCore core_; DISALLOW_COPY_AND_ASSIGN(DownloadResourceHandler); }; |