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

Unified Diff: net/http/http_stream_factory_impl_job.h

Issue 2359153003: Minor cleanups in HttpStreamFactoryImpl and member classes. (Closed)
Patch Set: Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: net/http/http_stream_factory_impl_job.h
diff --git a/net/http/http_stream_factory_impl_job.h b/net/http/http_stream_factory_impl_job.h
index d04cc51072dfb351f1ff84c1188b3aeddc51eb29..69bf4ca32bd3a40de2a9cdc154eb68cd6e914d8f 100644
--- a/net/http/http_stream_factory_impl_job.h
+++ b/net/http/http_stream_factory_impl_job.h
@@ -6,6 +6,7 @@
#define NET_HTTP_HTTP_STREAM_FACTORY_IMPL_JOB_H_
#include <memory>
+#include <utility>
#include "base/macros.h"
#include "base/memory/ref_counted.h"
@@ -257,23 +258,19 @@ class HttpStreamFactoryImpl::Job {
STATE_RESOLVE_PROXY,
STATE_RESOLVE_PROXY_COMPLETE,
- // Note that when Alternate-Protocol says we can connect to an alternate
- // port using a different protocol, we have the choice of communicating over
- // the original protocol, or speaking the alternate protocol (currently,
- // only npn-spdy) over an alternate port. For a cold page load, the http
- // connection that delivers the http response that has the
- // Alternate-Protocol header will already be warm. So, blocking the next
- // http request on establishing a new npn-spdy connection would incur extra
- // latency. Even if the http connection was not reused, establishing a new
- // http connection is typically faster than npn-spdy, since npn-spdy
Bence 2016/09/22 19:30:32 This is obsolete: Alt-Svc is only allowed for http
- // requires a SSL handshake. Therefore, we start both the http and the
- // npn-spdy jobs in parallel. In order not to unnecessarily waste sockets,
- // we have the http job block on the npn-spdy job after proxy resolution.
- // The npn-spdy job will Resume() the http job if, in
- // STATE_INIT_CONNECTION_COMPLETE, it detects an error or does not find an
- // existing SpdySession. In that case, the http and npn-spdy jobs will race.
- // When QUIC protocol is used by the npn-spdy job, then http job will wait
- // for |wait_time_| when the http job was resumed.
+ // The main and alternative jobs are started in parallel. The main job
+ // waits after it finishes proxy resolution. The alternative job never
+ // waits.
+ //
+ // An HTTP/2 alternative job notifies the JobController in DoInitConnection
+ // unless it can pool to an existing SpdySession. JobController, in turn,
+ // resumes the main job.
+ //
+ // A QUIC alternative job notifies the JobController in DoInitConnection
+ // regardless of whether it pools to an existing QUIC session, but the main
+ // job is only resumed after some delay.
+ //
+ // If the main job is resumed, then it races the alternative job.
STATE_WAIT,
STATE_WAIT_COMPLETE,
@@ -376,9 +373,6 @@ class HttpStreamFactoryImpl::Job {
// Called to handle a client certificate request.
int HandleCertificateRequest(int error);
- // Moves this stream request into SPDY mode.
- void SwitchToSpdyMode();
-
// Should we force QUIC for this stream request.
bool ShouldForceQuic() const;

Powered by Google App Engine
This is Rietveld 408576698