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

Unified Diff: net/quic/quic_chromium_client_session.h

Issue 1327923002: Migrates QUIC sessions to a new network when old network is (about to be) disconnected. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@home
Patch Set: Fixed StartReading method Created 5 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
« no previous file with comments | « no previous file | net/quic/quic_chromium_client_session.cc » ('j') | net/quic/quic_chromium_client_session.cc » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/quic_chromium_client_session.h
diff --git a/net/quic/quic_chromium_client_session.h b/net/quic/quic_chromium_client_session.h
index feb071042f26df69280ab0b8371ef09a502be281..6767afd630d22580d97ab368591252c5541d3a37 100644
--- a/net/quic/quic_chromium_client_session.h
+++ b/net/quic/quic_chromium_client_session.h
@@ -177,7 +177,7 @@ class NET_EXPORT_PRIVATE QuicChromiumClientSession
// Resumes a crypto handshake with the server after a timeout.
int ResumeCryptoConnect(const CompletionCallback& callback);
- // Causes the QuicConnectionHelper to start reading from the socket
+ // Causes the QuicConnectionHelper to start reading from all sockets
// and passing the data along to the QuicConnection.
void StartReading();
@@ -210,6 +210,13 @@ class NET_EXPORT_PRIVATE QuicChromiumClientSession
QuicDisabledReason disabled_reason() const { return disabled_reason_; }
+ // Call to add a new socket to the session. Takes ownership of |socket|.
+ void AddSocket(scoped_ptr<DatagramClientSocket> socket);
Ryan Hamilton 2015/09/08 04:09:38 Do we ever remove sockets? How shall we handle rea
Jana 2015/11/17 01:50:08 We don't remove sockets at this point. This is why
+
+ // Call to add a new PacketReader to the session. Returns true if reader was
+ // successfully added to the session. Takes ownership of |reader|.
+ bool AddPacketReader(QuicPacketReader* reader);
Ryan Hamilton 2015/09/08 04:09:37 Should this be a scoped_ptr?
Jana 2015/11/17 01:50:08 Done.
+
Ryan Hamilton 2015/09/08 04:09:38 It's a bit odd that we need a socket, reader and w
Jana 2015/11/17 01:50:08 Fixed in the new version, PTAL.
protected:
// QuicSession methods:
QuicDataStream* CreateIncomingDynamicStream(QuicStreamId id) override;
@@ -259,7 +266,7 @@ class NET_EXPORT_PRIVATE QuicChromiumClientSession
bool require_confirmation_;
scoped_ptr<QuicCryptoClientStream> crypto_stream_;
QuicStreamFactory* stream_factory_;
- scoped_ptr<DatagramClientSocket> socket_;
+ std::vector<scoped_ptr<DatagramClientSocket>> sockets_;
TransportSecurityState* transport_security_state_;
scoped_ptr<QuicServerInfo> server_info_;
scoped_ptr<CertVerifyResult> cert_verify_result_;
@@ -270,7 +277,7 @@ class NET_EXPORT_PRIVATE QuicChromiumClientSession
size_t num_total_streams_;
base::TaskRunner* task_runner_;
BoundNetLog net_log_;
- QuicPacketReader packet_reader_;
+ std::vector<scoped_ptr<QuicPacketReader>> packet_readers_;
base::TimeTicks dns_resolution_end_time_;
base::TimeTicks handshake_start_; // Time the handshake was started.
scoped_ptr<QuicConnectionLogger> logger_;
« no previous file with comments | « no previous file | net/quic/quic_chromium_client_session.cc » ('j') | net/quic/quic_chromium_client_session.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698