| Index: net/quic/quartc/quartc_packet_writer.cc
|
| diff --git a/net/quic/quartc/quartc_packet_writer.cc b/net/quic/quartc/quartc_packet_writer.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..c1bb1c56828b1fd1bb105abe059044eb0575de4f
|
| --- /dev/null
|
| +++ b/net/quic/quartc/quartc_packet_writer.cc
|
| @@ -0,0 +1,44 @@
|
| +// Copyright (c) 2016 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.
|
| +
|
| +#include "net/quic/quartc/quartc_packet_writer.h"
|
| +
|
| +namespace net {
|
| +QuartcPacketWriter::QuartcPacketWriter(
|
| + QuartcSessionInterface::Transport* transport)
|
| + : transport_(transport) {}
|
| +
|
| +WriteResult QuartcPacketWriter::WritePacket(const char* buffer,
|
| + size_t buf_len,
|
| + const IPAddress& self_address,
|
| + const IPEndPoint& peer_address,
|
| + PerPacketOptions* options) {
|
| + DCHECK(transport_);
|
| + int bytes_written = transport_->Write(buffer, buf_len);
|
| + if (bytes_written <= 0) {
|
| + return WriteResult(WRITE_STATUS_BLOCKED, EWOULDBLOCK);
|
| + }
|
| + return WriteResult(WRITE_STATUS_OK, bytes_written);
|
| +}
|
| +
|
| +bool QuartcPacketWriter::IsWriteBlockedDataBuffered() const {
|
| + return false;
|
| +}
|
| +
|
| +bool QuartcPacketWriter::IsWriteBlocked() const {
|
| + DCHECK(transport_);
|
| + return !transport_->CanWrite();
|
| +}
|
| +
|
| +// TODO(zhihuang) To figure out what is the better value to return. The
|
| +// transport in WebRTC network layer may become the bottleneck when determining
|
| +// the MTU.
|
| +QuicByteCount QuartcPacketWriter::GetMaxPacketSize(
|
| + const IPEndPoint& peer_address) const {
|
| + return kMaxPacketSize;
|
| +}
|
| +
|
| +void QuartcPacketWriter::SetWritable() {}
|
| +
|
| +} // namespace net
|
|
|