Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SWIMNIO: Small cleanup: Move callback handling into Shell from Handler #41

Open
ktoso opened this issue Aug 24, 2020 · 0 comments
Open
Labels
1 - triaged Task makes sense, is well defined, and is ready to be worked on good first issue Good first issue to pick up if you'd like to start out contributing help wanted Extra attention is needed s:small Small task (in T-shirt sizing)

Comments

@ktoso
Copy link
Member

ktoso commented Aug 24, 2020

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

@ktoso ktoso added 1 - triaged Task makes sense, is well defined, and is ready to be worked on good first issue Good first issue to pick up if you'd like to start out contributing help wanted Extra attention is needed s:small Small task (in T-shirt sizing) labels Aug 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1 - triaged Task makes sense, is well defined, and is ready to be worked on good first issue Good first issue to pick up if you'd like to start out contributing help wanted Extra attention is needed s:small Small task (in T-shirt sizing)
Projects
None yet
Development

No branches or pull requests

1 participant