| 123 | } |
| 124 | |
| 125 | func (s *Stream) Write(b []byte) (int, error) { |
| 126 | s.buf = s.buf[:0] |
| 127 | s.buf = (&dataFrame{Length: uint64(len(b))}).Append(s.buf) |
| 128 | if s.qlogger != nil { |
| 129 | s.qlogger.RecordEvent(qlog.FrameCreated{ |
| 130 | StreamID: s.StreamID(), |
| 131 | Raw: qlog.RawInfo{ |
| 132 | Length: len(s.buf) + len(b), |
| 133 | PayloadLength: len(b), |
| 134 | }, |
| 135 | Frame: qlog.Frame{Frame: qlog.DataFrame{}}, |
| 136 | }) |
| 137 | } |
| 138 | if _, err := s.datagramStream.Write(s.buf); err != nil { |
| 139 | return 0, err |
| 140 | } |
| 141 | return s.datagramStream.Write(b) |
| 142 | } |
| 143 | |
| 144 | func (s *Stream) StreamID() quic.StreamID { |
| 145 | return s.datagramStream.StreamID() |