OLD | NEW |
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 // A client specific QuicSession subclass. This class owns the underlying | 5 // A client specific QuicSession subclass. This class owns the underlying |
6 // QuicConnection and QuicConnectionHelper objects. The connection stores | 6 // QuicConnection and QuicConnectionHelper objects. The connection stores |
7 // a non-owning pointer to the helper so this session needs to ensure that | 7 // a non-owning pointer to the helper so this session needs to ensure that |
8 // the helper outlives the connection. | 8 // the helper outlives the connection. |
9 | 9 |
10 #ifndef NET_QUIC_QUIC_CHROMIUM_CLIENT_SESSION_H_ | 10 #ifndef NET_QUIC_QUIC_CHROMIUM_CLIENT_SESSION_H_ |
11 #define NET_QUIC_QUIC_CHROMIUM_CLIENT_SESSION_H_ | 11 #define NET_QUIC_QUIC_CHROMIUM_CLIENT_SESSION_H_ |
12 | 12 |
13 #include <string> | 13 #include <string> |
14 | 14 |
15 #include "base/basictypes.h" | 15 #include "base/basictypes.h" |
16 #include "base/containers/hash_tables.h" | 16 #include "base/containers/hash_tables.h" |
17 #include "base/memory/scoped_ptr.h" | 17 #include "base/memory/scoped_ptr.h" |
18 #include "base/time/time.h" | 18 #include "base/time/time.h" |
19 #include "net/base/completion_callback.h" | 19 #include "net/base/completion_callback.h" |
| 20 #include "net/base/socket_performance_watcher.h" |
20 #include "net/proxy/proxy_server.h" | 21 #include "net/proxy/proxy_server.h" |
21 #include "net/quic/quic_client_session_base.h" | 22 #include "net/quic/quic_client_session_base.h" |
22 #include "net/quic/quic_connection_logger.h" | 23 #include "net/quic/quic_connection_logger.h" |
23 #include "net/quic/quic_crypto_client_stream.h" | 24 #include "net/quic/quic_crypto_client_stream.h" |
24 #include "net/quic/quic_packet_reader.h" | 25 #include "net/quic/quic_packet_reader.h" |
25 #include "net/quic/quic_protocol.h" | 26 #include "net/quic/quic_protocol.h" |
26 #include "net/quic/quic_reliable_client_stream.h" | 27 #include "net/quic/quic_reliable_client_stream.h" |
27 | 28 |
28 namespace net { | 29 namespace net { |
29 | 30 |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 QuicCryptoClientStreamFactory* crypto_client_stream_factory, | 113 QuicCryptoClientStreamFactory* crypto_client_stream_factory, |
113 TransportSecurityState* transport_security_state, | 114 TransportSecurityState* transport_security_state, |
114 scoped_ptr<QuicServerInfo> server_info, | 115 scoped_ptr<QuicServerInfo> server_info, |
115 const QuicServerId& server_id, | 116 const QuicServerId& server_id, |
116 int cert_verify_flags, | 117 int cert_verify_flags, |
117 const QuicConfig& config, | 118 const QuicConfig& config, |
118 QuicCryptoClientConfig* crypto_config, | 119 QuicCryptoClientConfig* crypto_config, |
119 const char* const connection_description, | 120 const char* const connection_description, |
120 base::TimeTicks dns_resolution_end_time, | 121 base::TimeTicks dns_resolution_end_time, |
121 base::TaskRunner* task_runner, | 122 base::TaskRunner* task_runner, |
| 123 scoped_ptr<SocketPerformanceWatcher> socket_performance_watcher, |
122 NetLog* net_log); | 124 NetLog* net_log); |
123 ~QuicChromiumClientSession() override; | 125 ~QuicChromiumClientSession() override; |
124 | 126 |
125 void AddObserver(Observer* observer); | 127 void AddObserver(Observer* observer); |
126 void RemoveObserver(Observer* observer); | 128 void RemoveObserver(Observer* observer); |
127 | 129 |
128 // Attempts to create a new stream. If the stream can be | 130 // Attempts to create a new stream. If the stream can be |
129 // created immediately, returns OK. If the open stream limit | 131 // created immediately, returns OK. If the open stream limit |
130 // has been reached, returns ERR_IO_PENDING, and |request| | 132 // has been reached, returns ERR_IO_PENDING, and |request| |
131 // will be added to the stream requets queue and will | 133 // will be added to the stream requets queue and will |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
279 bool going_away_; | 281 bool going_away_; |
280 QuicDisabledReason disabled_reason_; | 282 QuicDisabledReason disabled_reason_; |
281 base::WeakPtrFactory<QuicChromiumClientSession> weak_factory_; | 283 base::WeakPtrFactory<QuicChromiumClientSession> weak_factory_; |
282 | 284 |
283 DISALLOW_COPY_AND_ASSIGN(QuicChromiumClientSession); | 285 DISALLOW_COPY_AND_ASSIGN(QuicChromiumClientSession); |
284 }; | 286 }; |
285 | 287 |
286 } // namespace net | 288 } // namespace net |
287 | 289 |
288 #endif // NET_QUIC_QUIC_CHROMIUM_CLIENT_SESSION_H_ | 290 #endif // NET_QUIC_QUIC_CHROMIUM_CLIENT_SESSION_H_ |
OLD | NEW |