reaktivity / k3po-nukleus-ext.java

K3PO Nukleus Extension
Apache License 2.0
0 stars 9 forks source link

read event can be delivered before connected event #4

Closed jitsni closed 7 years ago

jitsni commented 7 years ago
[target -> http2]   [0x00000000105535b2] BEGIN [0x0000000000000000] [0x0b63ba9f45cb1225]
[http2 -> target]   [0x00000000444bde6b] BEGIN [0x0000000000000929] [0x0b63ba9f45cb1225]
[target <- http2]   [0x00000000105535b2] WINDOW [8192]
[http2 <- target]   [0x00000000444bde6b] WINDOW [8192]
jfallows commented 7 years ago

The connected event in the k3po nukleus transport is being deferred for duplex transmission until...

...allowing source.window and target.window to be observed after the connected event.

However, we do not actually need to observe the source.window and target.window, so there is no need to wait for the WINDOW frame to be received.

Recommend removing support for read nukleus:source.window and read nukleus:target.window and then deliver the connected event after only...

This additionally supports scenarios where no WINDOW is needed by the sender when the sender needs only to send BEGIN directly followed by END, with no DATA frames in between.