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

Unified Diff: chrome/browser/extensions/api/web_request/upload_data_presenter.cc

Issue 11419034: net: Move ownership of UploadDataStream from URLRequestHttpJob to URLRequest (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Remove a local variable 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: chrome/browser/extensions/api/web_request/upload_data_presenter.cc
diff --git a/chrome/browser/extensions/api/web_request/upload_data_presenter.cc b/chrome/browser/extensions/api/web_request/upload_data_presenter.cc
index 167e0be1e37eba25427bf8591a5cad797c89fecd..f378f48866d3e6dcb78c32be665a739c2a0ad260 100644
--- a/chrome/browser/extensions/api/web_request/upload_data_presenter.cc
+++ b/chrome/browser/extensions/api/web_request/upload_data_presenter.cc
@@ -9,7 +9,8 @@
#include "base/values.h"
#include "chrome/browser/extensions/api/web_request/form_data_parser.h"
#include "chrome/browser/extensions/api/web_request/web_request_api_constants.h"
-#include "net/base/upload_element.h"
+#include "net/base/upload_bytes_element_reader.h"
+#include "net/base/upload_file_element_reader.h"
#include "net/url_request/url_request.h"
using base::BinaryValue;
@@ -60,18 +61,19 @@ RawDataPresenter::RawDataPresenter()
}
RawDataPresenter::~RawDataPresenter() {}
-void RawDataPresenter::FeedNext(const net::UploadElement& element) {
+void RawDataPresenter::FeedNext(const net::UploadElementReader& reader) {
if (!success_)
return;
- switch (element.type()) {
- case net::UploadElement::TYPE_BYTES:
- FeedNextBytes(element.bytes(), element.bytes_length());
- break;
- case net::UploadElement::TYPE_FILE:
- // Insert the file path instead of the contents, which may be too large.
- FeedNextFile(element.file_path().AsUTF8Unsafe());
- break;
+ if (reader.AsBytesReader()) {
+ const net::UploadBytesElementReader* bytes_reader = reader.AsBytesReader();
+ FeedNextBytes(bytes_reader->bytes(), bytes_reader->length());
+ } else if (reader.AsFileReader()) {
+ // Insert the file path instead of the contents, which may be too large.
+ const net::UploadFileElementReader* file_reader = reader.AsFileReader();
+ FeedNextFile(file_reader->path().AsUTF8Unsafe());
+ } else {
+ NOTIMPLEMENTED();
}
}
@@ -114,15 +116,16 @@ ParsedDataPresenter::ParsedDataPresenter(const net::URLRequest& request)
ParsedDataPresenter::~ParsedDataPresenter() {}
-void ParsedDataPresenter::FeedNext(const net::UploadElement& element) {
+void ParsedDataPresenter::FeedNext(const net::UploadElementReader& reader) {
if (!success_)
return;
- if (element.type() != net::UploadElement::TYPE_BYTES) {
+ const net::UploadBytesElementReader* bytes_reader = reader.AsBytesReader();
+ if (!bytes_reader) {
return;
}
- if (!parser_->SetSource(base::StringPiece(element.bytes(),
- element.bytes_length()))) {
+ if (!parser_->SetSource(base::StringPiece(bytes_reader->bytes(),
+ bytes_reader->length()))) {
Abort();
return;
}

Powered by Google App Engine
This is Rietveld 408576698