Index: net/quic/quic_connection_packet_writer_wrapper.h |
diff --git a/net/quic/quic_default_packet_writer.h b/net/quic/quic_connection_packet_writer_wrapper.h |
similarity index 44% |
copy from net/quic/quic_default_packet_writer.h |
copy to net/quic/quic_connection_packet_writer_wrapper.h |
index ed3b5975cee5edb964ad0466c12eb993deda238e..4354f86d17dcb9121fdd73a584d242202056ec85 100644 |
--- a/net/quic/quic_default_packet_writer.h |
+++ b/net/quic/quic_connection_packet_writer_wrapper.h |
@@ -1,9 +1,9 @@ |
-// Copyright 2013 The Chromium Authors. All rights reserved. |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef NET_QUIC_QUIC_DEFAULT_PACKET_WRITER_H_ |
-#define NET_QUIC_QUIC_DEFAULT_PACKET_WRITER_H_ |
+#ifndef NET_QUIC_QUIC_CONNECTION_PACKET_WRITER_WRAPPER_H_ |
+#define NET_QUIC_QUIC_CONNECTION_PACKET_WRITER_WRAPPER_H_ |
#include "base/basictypes.h" |
#include "base/memory/weak_ptr.h" |
@@ -11,19 +11,22 @@ |
#include "net/quic/quic_connection.h" |
#include "net/quic/quic_packet_writer.h" |
#include "net/quic/quic_protocol.h" |
-#include "net/udp/datagram_client_socket.h" |
+#include "net/quic/quic_types.h" |
+#include "net/udp/udp_server_socket.h" |
wtc
2014/06/20 21:40:48
Delete this header. This file is not using UDPServ
dmziegler
2014/06/23 18:31:23
Done.
|
namespace net { |
-struct WriteResult; |
+class QuicBlockedWriterInterface; |
wtc
2014/06/20 21:40:48
Delete this unused forward declaration.
dmziegler
2014/06/23 18:31:23
Done.
|
+class QuicServerPacketWriter; |
-// Chrome specific packet writer which uses a DatagramClientSocket for writing |
-// data. |
-class NET_EXPORT_PRIVATE QuicDefaultPacketWriter : public QuicPacketWriter { |
+// A wrapper packet writer that notifies a particular connection after its |
+// writes to the shared server packet writer finish. |
+// TODO(dmz) Try to merge with Chrome's default packet writer |
+class QuicConnectionPacketWriterWrapper : public QuicPacketWriter { |
wtc
2014/06/20 21:40:48
Why isn't this class named QuicServerPacketWriterW
dmziegler
2014/06/23 18:31:23
I've renamed to QuicPerConnectionPacketWriter (and
|
public: |
- QuicDefaultPacketWriter(); |
- explicit QuicDefaultPacketWriter(DatagramClientSocket* socket); |
- virtual ~QuicDefaultPacketWriter(); |
+ QuicConnectionPacketWriterWrapper(QuicServerPacketWriter* writer, |
+ QuicConnection* connection); |
+ virtual ~QuicConnectionPacketWriterWrapper(); |
// QuicPacketWriter |
virtual WriteResult WritePacket(const char* buffer, |
@@ -34,25 +37,16 @@ class NET_EXPORT_PRIVATE QuicDefaultPacketWriter : public QuicPacketWriter { |
virtual bool IsWriteBlocked() const OVERRIDE; |
virtual void SetWritable() OVERRIDE; |
- void OnWriteComplete(int rv); |
- void SetConnection(QuicConnection* connection) { |
- connection_ = connection; |
- } |
- |
- protected: |
- void set_write_blocked(bool is_blocked) { |
- write_blocked_ = is_blocked; |
- } |
- |
private: |
- base::WeakPtrFactory<QuicDefaultPacketWriter> weak_factory_; |
- DatagramClientSocket* socket_; |
+ void OnWriteComplete(WriteResult wr); |
wtc
2014/06/20 21:40:48
Name this parameter "result". Our Style Guide reco
dmziegler
2014/06/23 18:31:23
Done.
|
+ |
+ base::WeakPtrFactory<QuicConnectionPacketWriterWrapper> weak_factory_; |
+ QuicServerPacketWriter* writer_; // Not owned. |
wtc
2014/06/20 21:40:48
Our Style Guide recommends at least two spaces bef
dmziegler
2014/06/23 18:31:23
Done.
|
QuicConnection* connection_; |
- bool write_blocked_; |
- DISALLOW_COPY_AND_ASSIGN(QuicDefaultPacketWriter); |
+ DISALLOW_COPY_AND_ASSIGN(QuicConnectionPacketWriterWrapper); |
}; |
} // namespace net |
-#endif // NET_QUIC_QUIC_DEFAULT_PACKET_WRITER_H_ |
+#endif // NET_QUIC_QUIC_CONNECTION_PACKET_WRITER_WRAPPER_H_ |