| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "mojo/services/network/url_loader_impl.h" | 5 #include "mojo/services/network/url_loader_impl.h" |
| 6 | 6 |
| 7 #include "base/message_loop/message_loop.h" | 7 #include "base/message_loop/message_loop.h" |
| 8 #include "mojo/common/common_type_converters.h" | 8 #include "mojo/common/common_type_converters.h" |
| 9 #include "mojo/services/network/network_context.h" | 9 #include "mojo/services/network/network_context.h" |
| 10 #include "net/base/io_buffer.h" | 10 #include "net/base/io_buffer.h" |
| 11 #include "net/base/load_flags.h" | 11 #include "net/base/load_flags.h" |
| 12 #include "net/http/http_response_headers.h" | 12 #include "net/http/http_response_headers.h" |
| 13 #include "net/url_request/url_request_context.h" |
| 13 | 14 |
| 14 namespace mojo { | 15 namespace mojo { |
| 15 namespace { | 16 namespace { |
| 16 | 17 |
| 17 const uint32_t kMaxReadSize = 64 * 1024; | 18 const uint32_t kMaxReadSize = 64 * 1024; |
| 18 | 19 |
| 19 // Generates an URLResponsePtr from the response state of a net::URLRequest. | 20 // Generates an URLResponsePtr from the response state of a net::URLRequest. |
| 20 URLResponsePtr MakeURLResponse(const net::URLRequest* url_request) { | 21 URLResponsePtr MakeURLResponse(const net::URLRequest* url_request) { |
| 21 URLResponsePtr response(URLResponse::New()); | 22 URLResponsePtr response(URLResponse::New()); |
| 22 response->url = String::From(url_request->url()); | 23 response->url = String::From(url_request->url()); |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 127 if (url_request_) { | 128 if (url_request_) { |
| 128 SendError(net::ERR_UNEXPECTED, callback); | 129 SendError(net::ERR_UNEXPECTED, callback); |
| 129 return; | 130 return; |
| 130 } | 131 } |
| 131 | 132 |
| 132 if (!request) { | 133 if (!request) { |
| 133 SendError(net::ERR_INVALID_ARGUMENT, callback); | 134 SendError(net::ERR_INVALID_ARGUMENT, callback); |
| 134 return; | 135 return; |
| 135 } | 136 } |
| 136 | 137 |
| 137 url_request_.reset( | 138 url_request_ = context_->url_request_context()->CreateRequest( |
| 138 new net::URLRequest(GURL(request->url), | 139 GURL(request->url), |
| 139 net::DEFAULT_PRIORITY, | 140 net::DEFAULT_PRIORITY, |
| 140 this, | 141 this, |
| 141 context_->url_request_context())); | 142 NULL); |
| 142 url_request_->set_method(request->method); | 143 url_request_->set_method(request->method); |
| 143 if (request->headers) { | 144 if (request->headers) { |
| 144 net::HttpRequestHeaders headers; | 145 net::HttpRequestHeaders headers; |
| 145 for (size_t i = 0; i < request->headers.size(); ++i) | 146 for (size_t i = 0; i < request->headers.size(); ++i) |
| 146 headers.AddHeaderFromString(request->headers[i].To<base::StringPiece>()); | 147 headers.AddHeaderFromString(request->headers[i].To<base::StringPiece>()); |
| 147 url_request_->SetExtraRequestHeaders(headers); | 148 url_request_->SetExtraRequestHeaders(headers); |
| 148 } | 149 } |
| 149 if (request->bypass_cache) | 150 if (request->bypass_cache) |
| 150 url_request_->SetLoadFlags(net::LOAD_BYPASS_CACHE); | 151 url_request_->SetLoadFlags(net::LOAD_BYPASS_CACHE); |
| 151 // TODO(darin): Handle request body. | 152 // TODO(darin): Handle request body. |
| (...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 322 if (completed_synchronously) { | 323 if (completed_synchronously) { |
| 323 base::MessageLoop::current()->PostTask( | 324 base::MessageLoop::current()->PostTask( |
| 324 FROM_HERE, | 325 FROM_HERE, |
| 325 base::Bind(&URLLoaderImpl::ReadMore, weak_ptr_factory_.GetWeakPtr())); | 326 base::Bind(&URLLoaderImpl::ReadMore, weak_ptr_factory_.GetWeakPtr())); |
| 326 } else { | 327 } else { |
| 327 ReadMore(); | 328 ReadMore(); |
| 328 } | 329 } |
| 329 } | 330 } |
| 330 | 331 |
| 331 } // namespace mojo | 332 } // namespace mojo |
| OLD | NEW |