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

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

Issue 1212493003: Fix accounting and logging of HttpStream request and job bindings. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@stream-job-logging
Patch Set: comment typo Created 5 years, 5 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 | « no previous file | net/http/http_stream_factory_impl_job.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.h" 5 #include "net/http/http_stream_factory_impl.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after
231 // Each iteration may empty out the RequestSet for |spdy_session_key| in 231 // Each iteration may empty out the RequestSet for |spdy_session_key| in
232 // |spdy_session_request_map_|. So each time, check for RequestSet and use 232 // |spdy_session_request_map_|. So each time, check for RequestSet and use
233 // the first one. 233 // the first one.
234 // 234 //
235 // TODO(willchan): If it's important, switch RequestSet out for a FIFO 235 // TODO(willchan): If it's important, switch RequestSet out for a FIFO
236 // queue (Order by priority first, then FIFO within same priority). Unclear 236 // queue (Order by priority first, then FIFO within same priority). Unclear
237 // that it matters here. 237 // that it matters here.
238 if (!ContainsKey(spdy_session_request_map_, spdy_session_key)) 238 if (!ContainsKey(spdy_session_request_map_, spdy_session_key))
239 break; 239 break;
240 Request* request = *spdy_session_request_map_[spdy_session_key].begin(); 240 Request* request = *spdy_session_request_map_[spdy_session_key].begin();
241 request->Complete(was_npn_negotiated, 241 request->Complete(was_npn_negotiated, protocol_negotiated, using_spdy);
242 protocol_negotiated,
243 using_spdy,
244 net_log);
245 if (for_websockets_) { 242 if (for_websockets_) {
246 // TODO(ricea): Restore this code path when WebSocket over SPDY 243 // TODO(ricea): Restore this code path when WebSocket over SPDY
247 // implementation is ready. 244 // implementation is ready.
248 NOTREACHED(); 245 NOTREACHED();
249 } else { 246 } else {
250 bool use_relative_url = direct || request->url().SchemeIs("https"); 247 bool use_relative_url = direct || request->url().SchemeIs("https");
251 request->OnStreamReady( 248 request->OnStreamReady(
252 NULL, 249 NULL,
253 used_ssl_config, 250 used_ssl_config,
254 used_proxy_info, 251 used_proxy_info,
255 new SpdyHttpStream(spdy_session, use_relative_url)); 252 new SpdyHttpStream(spdy_session, use_relative_url));
256 } 253 }
257 } 254 }
258 // TODO(mbelshe): Alert other valid requests. 255 // TODO(mbelshe): Alert other valid requests.
259 } 256 }
260 257
261 void HttpStreamFactoryImpl::OnOrphanedJobComplete(const Job* job) { 258 void HttpStreamFactoryImpl::OnOrphanedJobComplete(const Job* job) {
262 orphaned_job_set_.erase(job); 259 orphaned_job_set_.erase(job);
263 delete job; 260 delete job;
264 } 261 }
265 262
266 void HttpStreamFactoryImpl::OnPreconnectsComplete(const Job* job) { 263 void HttpStreamFactoryImpl::OnPreconnectsComplete(const Job* job) {
267 preconnect_job_set_.erase(job); 264 preconnect_job_set_.erase(job);
268 delete job; 265 delete job;
269 OnPreconnectsCompleteInternal(); 266 OnPreconnectsCompleteInternal();
270 } 267 }
271 268
272 } // namespace net 269 } // namespace net
OLDNEW
« no previous file with comments | « no previous file | net/http/http_stream_factory_impl_job.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698