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

Issue 1886623002: Add QuicDataChannel and QuicDataTransport classes (Closed)

Created:
4 years, 8 months ago by mikescarlett
Modified:
4 years, 7 months ago
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com
Base URL:
https://chromium.googlesource.com/external/webrtc.git@master
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Add QuicDataChannel and QuicDataTransport classes QuicDataChannel implements DataChannelInterface. It replaces SCTP data channels by using a QuicTransportChannel to create a ReliableQuicStream for each message. QuicDataChannel only implements unordered, reliable delivery for the initial implementation and does not send a hello message. QuicDataTransport is a helper class that dispatches each incoming ReliableQuicStream to a QuicDataChannel when the remote peer receives a message by parsing the data channel id and message id from the message header. It is also responsible for encoding the header before QuicDataChannel sends the message. Split from CL https://codereview.chromium.org/1844803002/. BUG= Committed: https://crrev.com/9bc517f1237aa77051412c4a9d32cbe9d98120a9 Cr-Commit-Position: refs/heads/master@{#12574}

Patch Set 1 : #

Total comments: 26

Patch Set 2 : #

Patch Set 3 : Change QuicDataTransport constructor to make implementing the HELLO message easier #

Patch Set 4 : Make QuicDataChannel::Message public so QuicDataTransport can use it for handling messages #

Total comments: 22

Patch Set 5 : Respond to pthatcher's comments #

Patch Set 6 : Rename SetBufferedAmount to SetBufferedAmount_w #

Patch Set 7 : Sync to upstream #

Patch Set 8 : Fix minor mistakes #

Total comments: 2

Patch Set 9 : Make SetTransportChannel_w return the new data channel state #

Patch Set 10 : Make changes before committing #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1882 lines, -0 lines) Patch
M webrtc/api/api.gyp View 1 2 3 4 5 6 1 chunk +14 lines, -0 lines 0 comments Download
M webrtc/api/api_tests.gyp View 1 2 3 4 5 6 1 chunk +12 lines, -0 lines 0 comments Download
A webrtc/api/quicdatachannel.h View 1 2 3 4 5 6 7 8 1 chunk +215 lines, -0 lines 0 comments Download
A webrtc/api/quicdatachannel.cc View 1 2 3 4 5 6 7 8 9 1 chunk +391 lines, -0 lines 0 comments Download
A webrtc/api/quicdatachannel_unittest.cc View 1 2 3 4 5 6 7 8 9 1 chunk +659 lines, -0 lines 0 comments Download
A webrtc/api/quicdatatransport.h View 1 2 1 chunk +90 lines, -0 lines 0 comments Download
A webrtc/api/quicdatatransport.cc View 1 2 3 4 1 chunk +146 lines, -0 lines 0 comments Download
A webrtc/api/quicdatatransport_unittest.cc View 1 2 3 4 1 chunk +355 lines, -0 lines 0 comments Download

Messages

Total messages: 34 (22 generated)
mikescarlett
4 years, 8 months ago (2016-04-13 16:54:14 UTC) #4
pthatcher1
Comments I got through so far while on a flight. Landing now. I'll have to ...
4 years, 8 months ago (2016-04-14 17:21:57 UTC) #5
mikescarlett
https://codereview.chromium.org/1886623002/diff/120001/webrtc/api/quicdatachannel.cc File webrtc/api/quicdatachannel.cc (right): https://codereview.chromium.org/1886623002/diff/120001/webrtc/api/quicdatachannel.cc#newcode65 webrtc/api/quicdatachannel.cc:65: << " refuses to send an empty message."; On ...
4 years, 8 months ago (2016-04-14 22:16:51 UTC) #6
mikescarlett
I had to modify QuicSession so that when QUIC streams send data while the QuicTransportChannel ...
4 years, 8 months ago (2016-04-14 23:11:50 UTC) #7
pthatcher1
Mostly naming and nits. But there's a bit with threads to fix. https://codereview.chromium.org/1886623002/diff/340001/webrtc/api/quicdatachannel.cc File webrtc/api/quicdatachannel.cc ...
4 years, 7 months ago (2016-04-29 21:08:36 UTC) #22
mikescarlett
https://codereview.chromium.org/1886623002/diff/340001/webrtc/api/quicdatachannel.cc File webrtc/api/quicdatachannel.cc (right): https://codereview.chromium.org/1886623002/diff/340001/webrtc/api/quicdatachannel.cc#newcode46 webrtc/api/quicdatachannel.cc:46: uint64_t tmp; On 2016/04/29 21:08:36, pthatcher1 wrote: > Might ...
4 years, 7 months ago (2016-04-29 21:46:11 UTC) #23
pthatcher1
It looks good, except for one last thing... https://codereview.chromium.org/1886623002/diff/420001/webrtc/api/quicdatachannel.cc File webrtc/api/quicdatachannel.cc (right): https://codereview.chromium.org/1886623002/diff/420001/webrtc/api/quicdatachannel.cc#newcode252 webrtc/api/quicdatachannel.cc:252: } ...
4 years, 7 months ago (2016-04-29 22:04:17 UTC) #24
mikescarlett
https://codereview.chromium.org/1886623002/diff/420001/webrtc/api/quicdatachannel.cc File webrtc/api/quicdatachannel.cc (right): https://codereview.chromium.org/1886623002/diff/420001/webrtc/api/quicdatachannel.cc#newcode252 webrtc/api/quicdatachannel.cc:252: } On 2016/04/29 22:04:17, pthatcher1 wrote: > Hmmm.... I ...
4 years, 7 months ago (2016-04-29 22:11:04 UTC) #25
pthatcher1
lgtm Woo!
4 years, 7 months ago (2016-04-29 22:14:35 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1886623002/480001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1886623002/480001
4 years, 7 months ago (2016-04-29 23:39:22 UTC) #30
commit-bot: I haz the power
Committed patchset #10 (id:480001)
4 years, 7 months ago (2016-04-30 01:31:02 UTC) #32
commit-bot: I haz the power
4 years, 7 months ago (2016-05-01 22:02:18 UTC) #34
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/9bc517f1237aa77051412c4a9d32cbe9d98120a9
Cr-Commit-Position: refs/heads/master@{#12574}

Powered by Google App Engine
This is Rietveld 408576698