Currently we manage the callbacks in the SWIMNIOHandler, they're keyed by sequencenumbers which are invoked when we get "replies" since of course there's no such thing as a "reply" in UDP itself so we emulate them this way.
This could sit in the Shell rather than in the Handler which should only do serialization and message dispatch really.
// TODO: move callbacks into the shell?
struct PendingResponseCallbackIdentifier: Hashable {
let peerAddress: SocketAddress // FIXME: UID as well...?
let sequenceNumber: SWIM.SequenceNumber
}
Small ticket to be picked up by someone interested I think
Currently we manage the callbacks in the
SWIMNIOHandler
, they're keyed by sequencenumbers which are invoked when we get "replies" since of course there's no such thing as a "reply" in UDP itself so we emulate them this way.This could sit in the Shell rather than in the Handler which should only do serialization and message dispatch really.
Small ticket to be picked up by someone interested I think