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

Side by Side Diff: net/http/http_stream_factory_impl_job.cc

Issue 1545233002: Convert Pass()→std::move() in //net (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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/http/http_server_properties_impl.cc ('k') | net/http/http_stream_factory_impl_unittest.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/http/http_stream_factory_impl_job.h" 5 #include "net/http/http_stream_factory_impl_job.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <utility>
9 10
10 #include "base/bind.h" 11 #include "base/bind.h"
11 #include "base/bind_helpers.h" 12 #include "base/bind_helpers.h"
12 #include "base/location.h" 13 #include "base/location.h"
13 #include "base/logging.h" 14 #include "base/logging.h"
14 #include "base/metrics/histogram_macros.h" 15 #include "base/metrics/histogram_macros.h"
15 #include "base/metrics/sparse_histogram.h" 16 #include "base/metrics/sparse_histogram.h"
16 #include "base/profiler/scoped_tracker.h" 17 #include "base/profiler/scoped_tracker.h"
17 #include "base/single_thread_task_runner.h" 18 #include "base/single_thread_task_runner.h"
18 #include "base/stl_util.h" 19 #include "base/stl_util.h"
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 const AlternativeService* alternative_service, 66 const AlternativeService* alternative_service,
66 RequestPriority priority, 67 RequestPriority priority,
67 NetLogCaptureMode /* capture_mode */) { 68 NetLogCaptureMode /* capture_mode */) {
68 scoped_ptr<base::DictionaryValue> dict(new base::DictionaryValue()); 69 scoped_ptr<base::DictionaryValue> dict(new base::DictionaryValue());
69 if (source.IsValid()) 70 if (source.IsValid())
70 source.AddToEventParameters(dict.get()); 71 source.AddToEventParameters(dict.get());
71 dict->SetString("original_url", original_url->GetOrigin().spec()); 72 dict->SetString("original_url", original_url->GetOrigin().spec());
72 dict->SetString("url", url->GetOrigin().spec()); 73 dict->SetString("url", url->GetOrigin().spec());
73 dict->SetString("alternative_service", alternative_service->ToString()); 74 dict->SetString("alternative_service", alternative_service->ToString());
74 dict->SetString("priority", RequestPriorityToString(priority)); 75 dict->SetString("priority", RequestPriorityToString(priority));
75 return dict.Pass(); 76 return std::move(dict);
76 } 77 }
77 78
78 // Returns parameters associated with the Proto (with NPN negotiation) of a HTTP 79 // Returns parameters associated with the Proto (with NPN negotiation) of a HTTP
79 // stream. 80 // stream.
80 scoped_ptr<base::Value> NetLogHttpStreamProtoCallback( 81 scoped_ptr<base::Value> NetLogHttpStreamProtoCallback(
81 const SSLClientSocket::NextProtoStatus status, 82 const SSLClientSocket::NextProtoStatus status,
82 const std::string* proto, 83 const std::string* proto,
83 NetLogCaptureMode /* capture_mode */) { 84 NetLogCaptureMode /* capture_mode */) {
84 scoped_ptr<base::DictionaryValue> dict(new base::DictionaryValue()); 85 scoped_ptr<base::DictionaryValue> dict(new base::DictionaryValue());
85 86
86 dict->SetString("next_proto_status", 87 dict->SetString("next_proto_status",
87 SSLClientSocket::NextProtoStatusToString(status)); 88 SSLClientSocket::NextProtoStatusToString(status));
88 dict->SetString("proto", *proto); 89 dict->SetString("proto", *proto);
89 return dict.Pass(); 90 return std::move(dict);
90 } 91 }
91 92
92 HttpStreamFactoryImpl::Job::Job(HttpStreamFactoryImpl* stream_factory, 93 HttpStreamFactoryImpl::Job::Job(HttpStreamFactoryImpl* stream_factory,
93 HttpNetworkSession* session, 94 HttpNetworkSession* session,
94 const HttpRequestInfo& request_info, 95 const HttpRequestInfo& request_info,
95 RequestPriority priority, 96 RequestPriority priority,
96 const SSLConfig& server_ssl_config, 97 const SSLConfig& server_ssl_config,
97 const SSLConfig& proxy_ssl_config, 98 const SSLConfig& proxy_ssl_config,
98 NetLog* net_log) 99 NetLog* net_log)
99 : Job(stream_factory, 100 : Job(stream_factory,
(...skipping 1152 matching lines...) Expand 10 before | Expand all | Expand 10 after
1252 DCHECK(!IsSpdyAlternative()); 1253 DCHECK(!IsSpdyAlternative());
1253 // We may get ftp scheme when fetching ftp resources through proxy. 1254 // We may get ftp scheme when fetching ftp resources through proxy.
1254 bool using_proxy = (proxy_info_.is_http() || proxy_info_.is_https()) && 1255 bool using_proxy = (proxy_info_.is_http() || proxy_info_.is_https()) &&
1255 (request_info_.url.SchemeIs("http") || 1256 (request_info_.url.SchemeIs("http") ||
1256 request_info_.url.SchemeIs("ftp")); 1257 request_info_.url.SchemeIs("ftp"));
1257 if (stream_factory_->for_websockets_) { 1258 if (stream_factory_->for_websockets_) {
1258 DCHECK(request_); 1259 DCHECK(request_);
1259 DCHECK(request_->websocket_handshake_stream_create_helper()); 1260 DCHECK(request_->websocket_handshake_stream_create_helper());
1260 websocket_stream_.reset( 1261 websocket_stream_.reset(
1261 request_->websocket_handshake_stream_create_helper() 1262 request_->websocket_handshake_stream_create_helper()
1262 ->CreateBasicStream(connection_.Pass(), using_proxy)); 1263 ->CreateBasicStream(std::move(connection_), using_proxy));
1263 } else { 1264 } else {
1264 stream_.reset(new HttpBasicStream(connection_.release(), using_proxy)); 1265 stream_.reset(new HttpBasicStream(connection_.release(), using_proxy));
1265 } 1266 }
1266 return OK; 1267 return OK;
1267 } 1268 }
1268 1269
1269 CHECK(!stream_.get()); 1270 CHECK(!stream_.get());
1270 1271
1271 bool direct = !IsHttpsProxyAndHttpUrl(); 1272 bool direct = !IsHttpsProxyAndHttpUrl();
1272 if (existing_spdy_session_.get()) { 1273 if (existing_spdy_session_.get()) {
(...skipping 13 matching lines...) Expand all
1286 int result = valid_spdy_session_pool_->FindAvailableSession( 1287 int result = valid_spdy_session_pool_->FindAvailableSession(
1287 spdy_session_key, net_log_, &spdy_session); 1288 spdy_session_key, net_log_, &spdy_session);
1288 if (result != OK) { 1289 if (result != OK) {
1289 return result; 1290 return result;
1290 } 1291 }
1291 if (spdy_session) { 1292 if (spdy_session) {
1292 return SetSpdyHttpStreamOrBidirectionalStreamJob(spdy_session, direct); 1293 return SetSpdyHttpStreamOrBidirectionalStreamJob(spdy_session, direct);
1293 } 1294 }
1294 1295
1295 result = valid_spdy_session_pool_->CreateAvailableSessionFromSocket( 1296 result = valid_spdy_session_pool_->CreateAvailableSessionFromSocket(
1296 spdy_session_key, connection_.Pass(), net_log_, spdy_certificate_error_, 1297 spdy_session_key, std::move(connection_), net_log_,
1297 using_ssl_, &spdy_session); 1298 spdy_certificate_error_, using_ssl_, &spdy_session);
1298 if (result != OK) { 1299 if (result != OK) {
1299 return result; 1300 return result;
1300 } 1301 }
1301 1302
1302 if (!spdy_session->HasAcceptableTransportSecurity()) { 1303 if (!spdy_session->HasAcceptableTransportSecurity()) {
1303 spdy_session->CloseSessionOnError( 1304 spdy_session->CloseSessionOnError(
1304 ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY, ""); 1305 ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY, "");
1305 return ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY; 1306 return ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY;
1306 } 1307 }
1307 1308
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
1640 } 1641 }
1641 1642
1642 int HttpStreamFactoryImpl::Job::ValidSpdySessionPool:: 1643 int HttpStreamFactoryImpl::Job::ValidSpdySessionPool::
1643 CreateAvailableSessionFromSocket(const SpdySessionKey& key, 1644 CreateAvailableSessionFromSocket(const SpdySessionKey& key,
1644 scoped_ptr<ClientSocketHandle> connection, 1645 scoped_ptr<ClientSocketHandle> connection,
1645 const BoundNetLog& net_log, 1646 const BoundNetLog& net_log,
1646 int certificate_error_code, 1647 int certificate_error_code,
1647 bool is_secure, 1648 bool is_secure,
1648 base::WeakPtr<SpdySession>* spdy_session) { 1649 base::WeakPtr<SpdySession>* spdy_session) {
1649 *spdy_session = spdy_session_pool_->CreateAvailableSessionFromSocket( 1650 *spdy_session = spdy_session_pool_->CreateAvailableSessionFromSocket(
1650 key, connection.Pass(), net_log, certificate_error_code, is_secure); 1651 key, std::move(connection), net_log, certificate_error_code, is_secure);
1651 return CheckAlternativeServiceValidityForOrigin(*spdy_session); 1652 return CheckAlternativeServiceValidityForOrigin(*spdy_session);
1652 } 1653 }
1653 1654
1654 int HttpStreamFactoryImpl::Job::ValidSpdySessionPool:: 1655 int HttpStreamFactoryImpl::Job::ValidSpdySessionPool::
1655 CheckAlternativeServiceValidityForOrigin( 1656 CheckAlternativeServiceValidityForOrigin(
1656 base::WeakPtr<SpdySession> spdy_session) { 1657 base::WeakPtr<SpdySession> spdy_session) {
1657 // For an alternative Job, server_.host() might be different than 1658 // For an alternative Job, server_.host() might be different than
1658 // origin_url_.host(), therefore it needs to be verified that the former 1659 // origin_url_.host(), therefore it needs to be verified that the former
1659 // provides a certificate that is valid for the latter. 1660 // provides a certificate that is valid for the latter.
1660 if (!is_spdy_alternative_ || !spdy_session || 1661 if (!is_spdy_alternative_ || !spdy_session ||
(...skipping 28 matching lines...) Expand all
1689 if (connection_->socket()) { 1690 if (connection_->socket()) {
1690 ConnectionAttempts socket_attempts; 1691 ConnectionAttempts socket_attempts;
1691 connection_->socket()->GetConnectionAttempts(&socket_attempts); 1692 connection_->socket()->GetConnectionAttempts(&socket_attempts);
1692 request_->AddConnectionAttempts(socket_attempts); 1693 request_->AddConnectionAttempts(socket_attempts);
1693 } else { 1694 } else {
1694 request_->AddConnectionAttempts(connection_->connection_attempts()); 1695 request_->AddConnectionAttempts(connection_->connection_attempts());
1695 } 1696 }
1696 } 1697 }
1697 1698
1698 } // namespace net 1699 } // namespace net
OLDNEW
« no previous file with comments | « net/http/http_server_properties_impl.cc ('k') | net/http/http_stream_factory_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698