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/memory/scoped_vector.h" | 7 #include "base/memory/scoped_vector.h" |
8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
9 #include "mojo/common/common_type_converters.h" | 9 #include "mojo/common/common_type_converters.h" |
10 #include "mojo/common/url_type_converters.h" | 10 #include "mojo/common/url_type_converters.h" |
(...skipping 13 matching lines...) Expand all Loading... |
24 // Generates an URLResponsePtr from the response state of a net::URLRequest. | 24 // Generates an URLResponsePtr from the response state of a net::URLRequest. |
25 URLResponsePtr MakeURLResponse(const net::URLRequest* url_request) { | 25 URLResponsePtr MakeURLResponse(const net::URLRequest* url_request) { |
26 URLResponsePtr response(URLResponse::New()); | 26 URLResponsePtr response(URLResponse::New()); |
27 response->url = String::From(url_request->url()); | 27 response->url = String::From(url_request->url()); |
28 | 28 |
29 const net::HttpResponseHeaders* headers = url_request->response_headers(); | 29 const net::HttpResponseHeaders* headers = url_request->response_headers(); |
30 if (headers) { | 30 if (headers) { |
31 response->status_code = headers->response_code(); | 31 response->status_code = headers->response_code(); |
32 response->status_line = headers->GetStatusLine(); | 32 response->status_line = headers->GetStatusLine(); |
33 | 33 |
34 response->headers = Array<HTTPHeaderPtr>::New(0); | 34 response->headers = Array<HttpHeaderPtr>::New(0); |
35 std::vector<String> header_lines; | 35 std::vector<String> header_lines; |
36 void* iter = nullptr; | 36 void* iter = nullptr; |
37 std::string name, value; | 37 std::string name, value; |
38 while (headers->EnumerateHeaderLines(&iter, &name, &value)) { | 38 while (headers->EnumerateHeaderLines(&iter, &name, &value)) { |
39 HTTPHeaderPtr header = HTTPHeader::New(); | 39 HttpHeaderPtr header = HttpHeader::New(); |
40 header->name = name; | 40 header->name = name; |
41 header->value = value; | 41 header->value = value; |
42 response->headers.push_back(header.Pass()); | 42 response->headers.push_back(header.Pass()); |
43 } | 43 } |
44 } | 44 } |
45 | 45 |
46 std::string mime_type; | 46 std::string mime_type; |
47 url_request->GetMimeType(&mime_type); | 47 url_request->GetMimeType(&mime_type); |
48 response->mime_type = mime_type; | 48 response->mime_type = mime_type; |
49 | 49 |
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
364 | 364 |
365 void URLLoaderImpl::ListenForPeerClosed() { | 365 void URLLoaderImpl::ListenForPeerClosed() { |
366 handle_watcher_.Start(response_body_stream_.get(), | 366 handle_watcher_.Start(response_body_stream_.get(), |
367 MOJO_HANDLE_SIGNAL_PEER_CLOSED, | 367 MOJO_HANDLE_SIGNAL_PEER_CLOSED, |
368 MOJO_DEADLINE_INDEFINITE, | 368 MOJO_DEADLINE_INDEFINITE, |
369 base::Bind(&URLLoaderImpl::OnResponseBodyStreamClosed, | 369 base::Bind(&URLLoaderImpl::OnResponseBodyStreamClosed, |
370 base::Unretained(this))); | 370 base::Unretained(this))); |
371 } | 371 } |
372 | 372 |
373 } // namespace mojo | 373 } // namespace mojo |
OLD | NEW |