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

Side by Side Diff: net/spdy/spdy_proxy_client_socket.cc

Issue 1063563002: Simplify the interface to ProxyClientSocket::BuildTunnelRequest (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix WebSocketStreamCreateTest.HandleErrTunnelConnectionFailed Created 5 years, 8 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 unified diff | Download patch
« no previous file with comments | « net/spdy/spdy_network_transaction_unittest.cc ('k') | net/websockets/websocket_stream_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "net/spdy/spdy_proxy_client_socket.h" 5 #include "net/spdy/spdy_proxy_client_socket.h"
6 6
7 #include <algorithm> // min 7 #include <algorithm> // min
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after
258 258
259 int SpdyProxyClientSocket::GetLocalAddress(IPEndPoint* address) const { 259 int SpdyProxyClientSocket::GetLocalAddress(IPEndPoint* address) const {
260 if (!IsConnected()) 260 if (!IsConnected())
261 return ERR_SOCKET_NOT_CONNECTED; 261 return ERR_SOCKET_NOT_CONNECTED;
262 return spdy_stream_->GetLocalAddress(address); 262 return spdy_stream_->GetLocalAddress(address);
263 } 263 }
264 264
265 void SpdyProxyClientSocket::LogBlockedTunnelResponse() const { 265 void SpdyProxyClientSocket::LogBlockedTunnelResponse() const {
266 ProxyClientSocket::LogBlockedTunnelResponse( 266 ProxyClientSocket::LogBlockedTunnelResponse(
267 response_.headers->response_code(), 267 response_.headers->response_code(),
268 request_.url,
269 /* is_https_proxy = */ true); 268 /* is_https_proxy = */ true);
270 } 269 }
271 270
272 void SpdyProxyClientSocket::RunCallback(const CompletionCallback& callback, 271 void SpdyProxyClientSocket::RunCallback(const CompletionCallback& callback,
273 int result) const { 272 int result) const {
274 callback.Run(result); 273 callback.Run(result);
275 } 274 }
276 275
277 void SpdyProxyClientSocket::OnIOComplete(int result) { 276 void SpdyProxyClientSocket::OnIOComplete(int result) {
278 DCHECK_NE(STATE_DISCONNECTED, next_state_); 277 DCHECK_NE(STATE_DISCONNECTED, next_state_);
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
347 346
348 int SpdyProxyClientSocket::DoSendRequest() { 347 int SpdyProxyClientSocket::DoSendRequest() {
349 next_state_ = STATE_SEND_REQUEST_COMPLETE; 348 next_state_ = STATE_SEND_REQUEST_COMPLETE;
350 349
351 // Add Proxy-Authentication header if necessary. 350 // Add Proxy-Authentication header if necessary.
352 HttpRequestHeaders authorization_headers; 351 HttpRequestHeaders authorization_headers;
353 if (auth_->HaveAuth()) { 352 if (auth_->HaveAuth()) {
354 auth_->AddAuthorizationHeader(&authorization_headers); 353 auth_->AddAuthorizationHeader(&authorization_headers);
355 } 354 }
356 355
356 std::string user_agent;
357 if (!request_.extra_headers.GetHeader(HttpRequestHeaders::kUserAgent,
358 &user_agent)) {
359 user_agent.clear();
360 }
357 std::string request_line; 361 std::string request_line;
358 HttpRequestHeaders request_headers; 362 HttpRequestHeaders request_headers;
359 BuildTunnelRequest(request_, authorization_headers, endpoint_, &request_line, 363 BuildTunnelRequest(endpoint_, authorization_headers, user_agent,
360 &request_headers); 364 &request_line, &request_headers);
361 365
362 net_log_.AddEvent( 366 net_log_.AddEvent(
363 NetLog::TYPE_HTTP_TRANSACTION_SEND_TUNNEL_HEADERS, 367 NetLog::TYPE_HTTP_TRANSACTION_SEND_TUNNEL_HEADERS,
364 base::Bind(&HttpRequestHeaders::NetLogCallback, 368 base::Bind(&HttpRequestHeaders::NetLogCallback,
365 base::Unretained(&request_headers), 369 base::Unretained(&request_headers),
366 &request_line)); 370 &request_line));
367 371
368 request_.extra_headers.MergeFrom(request_headers); 372 request_.extra_headers.MergeFrom(request_headers);
369 scoped_ptr<SpdyHeaderBlock> headers(new SpdyHeaderBlock()); 373 scoped_ptr<SpdyHeaderBlock> headers(new SpdyHeaderBlock());
370 CreateSpdyHeadersFromHttpRequest(request_, request_headers, 374 CreateSpdyHeadersFromHttpRequest(request_, request_headers,
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 } else if (!read_callback_.is_null()) { 535 } else if (!read_callback_.is_null()) {
532 // If we have a read_callback_, the we need to make sure we call it back. 536 // If we have a read_callback_, the we need to make sure we call it back.
533 OnDataReceived(scoped_ptr<SpdyBuffer>()); 537 OnDataReceived(scoped_ptr<SpdyBuffer>());
534 } 538 }
535 // This may have been deleted by read_callback_, so check first. 539 // This may have been deleted by read_callback_, so check first.
536 if (weak_ptr.get() && !write_callback.is_null()) 540 if (weak_ptr.get() && !write_callback.is_null())
537 write_callback.Run(ERR_CONNECTION_CLOSED); 541 write_callback.Run(ERR_CONNECTION_CLOSED);
538 } 542 }
539 543
540 } // namespace net 544 } // namespace net
OLDNEW
« no previous file with comments | « net/spdy/spdy_network_transaction_unittest.cc ('k') | net/websockets/websocket_stream_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698