| Index: content/browser/service_worker/service_worker_write_to_cache_job.h
|
| diff --git a/content/browser/service_worker/service_worker_write_to_cache_job.h b/content/browser/service_worker/service_worker_write_to_cache_job.h
|
| index 92272399b820393fe46a6f121caf4010e4692e2b..e614912282b17827bba311030e8adab313b1ebc0 100644
|
| --- a/content/browser/service_worker/service_worker_write_to_cache_job.h
|
| +++ b/content/browser/service_worker/service_worker_write_to_cache_job.h
|
| @@ -64,6 +64,7 @@ class CONTENT_EXPORT ServiceWorkerWriteToCacheJob
|
|
|
| // net::URLRequestJob overrides
|
| void Start() override;
|
| + void StartAsync();
|
| void Kill() override;
|
| net::LoadState GetLoadState() const override;
|
| bool GetCharset(std::string* charset) override;
|
| @@ -71,7 +72,7 @@ class CONTENT_EXPORT ServiceWorkerWriteToCacheJob
|
| void GetResponseInfo(net::HttpResponseInfo* info) override;
|
| int GetResponseCode() const override;
|
| void SetExtraRequestHeaders(const net::HttpRequestHeaders& headers) override;
|
| - bool ReadRawData(net::IOBuffer* buf, int buf_size, int* bytes_read) override;
|
| + int ReadRawData(net::IOBuffer* buf, int buf_size) override;
|
|
|
| const net::HttpResponseInfo* http_info() const;
|
|
|
| @@ -109,18 +110,22 @@ class CONTENT_EXPORT ServiceWorkerWriteToCacheJob
|
| bool CheckPathRestriction(net::URLRequest* request);
|
|
|
| // Writes network data back to the script cache if needed, and notifies the
|
| - // script cache of fetch completion at EOF. This function might need to do
|
| - // asynchronous IO; if so, it signals this through setting the URLRequestJob's
|
| - // status to IO_PENDING. After this function returns, if the URLRequestJob
|
| - // isn't IO_PENDING, all of the data in |io_buffer_| has been written back to
|
| - // the script cache if necessary.
|
| - void HandleNetData(int bytes_read);
|
| -
|
| - void NotifyDoneHelper(const net::URLRequestStatus& status,
|
| - const std::string& status_message);
|
| -
|
| - void NotifyFinishedCaching(net::URLRequestStatus status,
|
| - const std::string& status_message);
|
| + // script cache of fetch completion at EOF. This function returns
|
| + // net::IO_PENDING if the IO is to be completed asynchronously, returns a
|
| + // negative number that represents a corresponding net error code (other than
|
| + // net::IO_PENDING) if an error occurred, or returns a non-negative number
|
| + // that represents the number of network bytes read. If the return value is
|
| + // non-negative, all of the data in |io_buffer_| has been written back to the
|
| + // script cache if necessary.
|
| + int HandleNetData(int bytes_read);
|
| +
|
| + void NotifyStartErrorHelper(const net::URLRequestStatus& status,
|
| + const std::string& status_message);
|
| +
|
| + // Returns an error code that is passed in through |status| or a new one if an
|
| + // additional error is found.
|
| + net::Error NotifyFinishedCaching(net::URLRequestStatus status,
|
| + const std::string& status_message);
|
|
|
| scoped_ptr<ServiceWorkerResponseReader> CreateCacheResponseReader();
|
| scoped_ptr<ServiceWorkerResponseWriter> CreateCacheResponseWriter();
|
| @@ -140,6 +145,7 @@ class CONTENT_EXPORT ServiceWorkerWriteToCacheJob
|
| bool has_been_killed_;
|
| bool did_notify_started_;
|
| bool did_notify_finished_;
|
| +
|
| base::WeakPtrFactory<ServiceWorkerWriteToCacheJob> weak_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ServiceWorkerWriteToCacheJob);
|
|
|