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

Unified Diff: net/url_request/url_request_simple_job.h

Issue 10696135: Offload disk accesses to WorkerPool in ExtensionProtocolHandler (Closed) Base URL: https://src.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 5 months 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
« no previous file with comments | « net/url_request/url_request_data_job.cc ('k') | net/url_request/url_request_simple_job.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/url_request/url_request_simple_job.h
===================================================================
--- net/url_request/url_request_simple_job.h (revision 147715)
+++ net/url_request/url_request_simple_job.h (working copy)
@@ -8,6 +8,7 @@
#include <string>
#include "base/memory/weak_ptr.h"
+#include "net/base/completion_callback.h"
#include "net/base/net_export.h"
#include "net/url_request/url_request_job.h"
@@ -29,15 +30,27 @@
protected:
virtual ~URLRequestSimpleJob();
- // subclasses must override the way response data is determined.
- virtual bool GetData(std::string* mime_type,
- std::string* charset,
- std::string* data) const = 0;
+ // Subclasses must override the way response data is determined.
+ // The return value should be:
+ // - OK if data is obtained;
+ // - ERR_IO_PENDING if async processing is needed to finish obtaining data.
+ // This is the only case when |callback| should be called after
+ // completion of the operation. In other situations |callback| should
+ // never be called;
+ // - any other ERR_* code to indicate an error. This code will be used
+ // as the error code in the URLRequestStatus when the URLRequest
+ // is finished.
+ virtual int GetData(std::string* mime_type,
+ std::string* charset,
+ std::string* data,
+ const CompletionCallback& callback) const = 0;
protected:
void StartAsync();
private:
+ void OnGetDataCompleted(int result);
+
std::string mime_type_;
std::string charset_;
std::string data_;
« no previous file with comments | « net/url_request/url_request_data_job.cc ('k') | net/url_request/url_request_simple_job.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698