@@ -1388,6 +1388,15 @@ extension ManyToManyApplicationStreamProtocol where Flow: AutomaticUpperStreamPr
13881388 guard let flow = self . flow ( for: flowID) else { throw NetworkError . posix ( EINVAL) }
13891389 flow. serviceUpperReceiveQueue ( )
13901390 }
1391+ // Enqueue and delivery the stream data all in one shot
1392+ public func deliverInboundStreamData(
1393+ flow flowID: MultiplexedFlowIdentifier ,
1394+ streamData: consuming FrameArray
1395+ ) throws ( NetworkError) {
1396+ guard var flow = self . flow ( for: flowID) else { throw NetworkError . posix ( EINVAL) }
1397+ try flow. addToUpperReceiveQueue ( streamData)
1398+ flow. serviceUpperReceiveQueue ( )
1399+ }
13911400}
13921401
13931402@_spi ( ProtocolProvider)
@@ -1581,6 +1590,16 @@ extension ManyToManyApplicationDatagramProtocol where Flow: AutomaticUpperDatagr
15811590 guard let flow = self . flow ( for: flowID) else { throw NetworkError . posix ( EINVAL) }
15821591 flow. serviceUpperReceiveQueue ( )
15831592 }
1593+
1594+ // Enqueue and delivery the datagrams all in one shot
1595+ public func deliverInboundDatagrams(
1596+ flow flowID: MultiplexedFlowIdentifier ,
1597+ datagrams: consuming FrameArray
1598+ ) throws ( NetworkError) {
1599+ guard var flow = self . flow ( for: flowID) else { throw NetworkError . posix ( EINVAL) }
1600+ try flow. addToUpperReceiveQueue ( datagrams)
1601+ flow. serviceUpperReceiveQueue ( )
1602+ }
15841603}
15851604
15861605@available ( Network 0 . 1 . 0 , * )
@@ -1613,6 +1632,16 @@ extension HeterogeneousManyToManyProtocolHandler where SecondaryFlow: AutomaticU
16131632 guard let flow = self . secondaryFlow ( for: flowID) else { throw NetworkError . posix ( EINVAL) }
16141633 flow. serviceUpperReceiveQueue ( )
16151634 }
1635+
1636+ // Enqueue and delivery the datagrams all in one shot
1637+ public func deliverInboundDatagrams(
1638+ flow flowID: MultiplexedFlowIdentifier ,
1639+ datagrams: consuming FrameArray
1640+ ) throws ( NetworkError) {
1641+ guard var flow = self . secondaryFlow ( for: flowID) else { throw NetworkError . posix ( EINVAL) }
1642+ try flow. addToUpperReceiveQueue ( datagrams)
1643+ flow. serviceUpperReceiveQueue ( )
1644+ }
16161645}
16171646
16181647@_spi ( ProtocolProvider)
0 commit comments