diff --git a/transport-nethernet/src/main/java/dev/kastle/netty/channel/nethernet/NetherNetChildChannel.java b/transport-nethernet/src/main/java/dev/kastle/netty/channel/nethernet/NetherNetChildChannel.java index afc2e17..28c2467 100644 --- a/transport-nethernet/src/main/java/dev/kastle/netty/channel/nethernet/NetherNetChildChannel.java +++ b/transport-nethernet/src/main/java/dev/kastle/netty/channel/nethernet/NetherNetChildChannel.java @@ -3,12 +3,26 @@ import dev.kastle.netty.channel.nethernet.config.DefaultNetherChannelConfig; import io.netty.channel.Channel; import io.netty.channel.ChannelPromise; +import io.netty.util.AttributeKey; import tel.schich.libdatachannel.PeerConnection; import java.net.InetSocketAddress; import java.net.SocketAddress; public class NetherNetChildChannel extends NetherNetChannel { + + /** + * The signaling connection ID this channel was accepted for. + *
+ * A child arrives on the server pipeline carrying nothing that ties it back to the offer that
+ * produced it, and arrival order does not follow the order answers were produced in. Signaling
+ * implementations already hold per connection ID state, since that is the key
+ * {@code setSignalHandler} and {@code removeSignalHandler} use, so exposing it here lets them
+ * attribute a channel without reaching into internals.
+ */
+ public static final AttributeKey