Chromium Code Reviews| Index: net/http/http_stream_factory_impl.h |
| diff --git a/net/http/http_stream_factory_impl.h b/net/http/http_stream_factory_impl.h |
| index 9d6e1335ef0530dbaae08b182755c249a70e99e1..548cc98f43760fee1715919554cda77da01a6ad0 100644 |
| --- a/net/http/http_stream_factory_impl.h |
| +++ b/net/http/http_stream_factory_impl.h |
| @@ -11,6 +11,7 @@ |
| #include "base/ref_counted.h" |
| #include "net/http/http_stream_factory.h" |
| +#include "net/base/net_log.h" |
| #include "net/proxy/proxy_server.h" |
| namespace net { |
| @@ -44,20 +45,29 @@ class HttpStreamFactoryImpl : public HttpStreamFactory { |
| typedef std::set<Request*> RequestSet; |
| typedef std::map<HostPortProxyPair, RequestSet> SpdySessionRequestMap; |
| - LoadState GetLoadState(const Request& request) const; |
| + // Detaches |job| from |request|. |
| + void OrphanJob(Job* job, const Request* request); |
| // Called when a SpdySession is ready. It will find appropriate Requests and |
| // fulfill them. |direct| indicates whether or not |spdy_session| uses a |
| // proxy. |
| - void OnSpdySessionReady(const Job* job, |
| - scoped_refptr<SpdySession> spdy_session, |
| - bool direct); |
| + void OnSpdySessionReady(scoped_refptr<SpdySession> spdy_session, |
| + bool direct, |
| + const SSLConfig& used_ssl_config, |
| + const ProxyInfo& used_proxy_info, |
| + bool was_alternate_protocol_available, |
| + bool was_npn_negotiated, |
| + bool using_spdy, |
| + const NetLog::Source& source); |
| // Called when the Job detects that the endpoint indicated by the |
| // Alternate-Protocol does not work. Lets the factory update |
| // HttpAlternateProtocols with the failure and resets the SPDY session key. |
| void OnBrokenAlternateProtocol(const Job*, const HostPortPair& origin); |
| + // Invoked when an orphaned Job finishes. |
| + void OnOrphanedJobComplete(const Job* job); |
| + |
| // Invoked when the Job finishes preconnecting sockets. |
| void OnPreconnectsComplete(const Job* job); |
| @@ -75,6 +85,11 @@ class HttpStreamFactoryImpl : public HttpStreamFactory { |
| SpdySessionRequestMap spdy_session_request_map_; |
| + // These jobs correspond to jobs orphaned by requests and now owned by |
| + // HttpStreamFactoryImpl. Leftover jobs will be deleted when the factory is |
| + // destroyed. |
|
Mike Belshe
2011/03/01 17:09:19
"...deleted when the factory is destroyed." sounds
willchan no longer on Chromium
2011/03/01 17:48:27
Oh, I'll clarify this comment. What I mean is that
|
| + std::set<const Job*> orphaned_job_set_; |
| + |
| // These jobs correspond to preconnect requests and have no associated Request |
| // object. They're owned by HttpStreamFactoryImpl. Leftover jobs will be |
| // deleted when the factory is destroyed. |