Titouan Rigoudy
d465c9f216
Rework Client API to something inspired by tonic bidi streaming RPCs.
4 years ago
Titouan Rigoudy
d93b785c40
Define proto::server::Client, implement rough login.
4 years ago
Titouan Rigoudy
621274aac1
Move FakeServer to proto::server.
4 years ago
Titouan Rigoudy
903864f1cd
Define proto::core module.
4 years ago
Titouan Rigoudy
72bc8e2013
Fix reference to frame module.
4 years ago
Titouan Rigoudy
45842cdf93
Rename value_codec.rs to value.rs.
4 years ago
Titouan Rigoudy
381ec05247
Set indent width to 2.
4 years ago
Titouan Rigoudy
587078403c
Run cargo fmt.
4 years ago
Titouan Rigoudy
91d2387ffd
Rename codec.rs to frame.rs.
4 years ago
Titouan Rigoudy
1b69daf783
Rename Connection to FrameStream.
4 years ago
Titouan Rigoudy
12f85fbaa9
Move Connection into codec.rs.
4 years ago
Titouan Rigoudy
83620698fd
Set 80-char line width.
4 years ago
Titouan Rigoudy
8d3a325990
Start implementing fake server login handling.
4 years ago
Titouan Rigoudy
a711c51ea2
Add test for very large messages.
4 years ago
Titouan Rigoudy
b06d459b3b
Add skeleton code for a fake server.
4 years ago
Titouan Rigoudy
70bf234947
Introduce simple Connection to send and receive frames.
4 years ago
Titouan Rigoudy
7b3a3b226a
Squash last warning about room.rs.
4 years ago
Titouan Rigoudy
f153167e1d
Small fixes to value_codec.rs.
4 years ago
Titouan Rigoudy
a98672f282
Use encoding crate in value_codec.rs.
4 years ago
Titouan Rigoudy
e147ab7076
Update `bytes` dependency to 1.0.
4 years ago
Titouan Rigoudy
da74ff8d4e
Re-use BytesMut for encoding and decoding.
Refactor LengthPrefixed{De, En}coder to Frame{De,En}coder.
5 years ago
Titouan Rigoudy
e8b2b47aed
Squash a bunch of warnings with allow attributes.
4 years ago
Titouan Rigoudy
ea4b5c1184
Add a few tests to user.rs to squash warnings.
4 years ago
Titouan Rigoudy
c7471d65df
Extract prefix encoding logic into Prefixer.
5 years ago
Titouan Rigoudy
59a9f6bf90
Rename base_codec.rs to value_codec.rs.
5 years ago
Titouan Rigoudy
b18fe56f05
Rename Proto{En,De}code to Value{En,De}code.
5 years ago
Titouan Rigoudy
417edbf6bb
Fully remove bytes crate dep from base_codec.rs
5 years ago
Titouan Rigoudy
7bb290f0ef
Introduce ProtoEncodeError and use it in ProtoEncoder.
Tests are not fixed yet.
5 years ago
Titouan Rigoudy
97e380eab6
Simplify ProtoDecodeError conversion to io::Error.
5 years ago
Titouan Rigoudy
c9ffdc5392
Introduce ProtoDecodeError and use it in ProtoDecoder.
5 years ago
Titouan Rigoudy
80ebf389e6
Add things to TODO.md.
5 years ago
Titouan Rigoudy
9b81a6c3a6
Remove BytesMut from ProtoDecoder tests in base_codec.rs.
5 years ago
Titouan Rigoudy
468c404765
Simplify ProtoDecoder by removing dependency on the bytes crate.
Improve decoding error messages by annotating them with the position
at which the error was encountered. This could use some improvement
in a follow-up by introducing a specific Error type instead of
piggy-backing onto std::io::Error.
It is easier and more generically useful to accept any byte slice
as a buffer. In addition our zero-copy use of the underlying buffer
does not align particularly well with std::io::Read, so we move away
from std::io::Cursor as well.
5 years ago
Titouan Rigoudy
30b8ff043c
Run cargo fmt.
5 years ago
Titouan Rigoudy
5894f425b0
Fix typo in base_codec.rs
5 years ago
Titouan Rigoudy
972efded99
Run cargo update.
5 years ago
Titouan Rigoudy
487060f15b
Update to Rust 1.44.0, recompile.
5 years ago
Titouan Rigoudy
5ccae4b042
Add stub LoginHandler.
6 years ago
Titouan Rigoudy
bb03cbf66b
Add LoginStatus to Context.
6 years ago
Titouan Rigoudy
2d4813d047
Add Todo state to LoginStatus enum.
6 years ago
Titouan Rigoudy
64472daae9
Extract LoginStatus to its own file.
6 years ago
Titouan Rigoudy
d5b269a05d
Introduce SetPrivilegedUsersHandler.
This is the first message handler to be defined.
6 years ago
Titouan Rigoudy
cc17e60f9b
Remove useless Debug from DispatchedMessage handler type bound.
6 years ago
Titouan Rigoudy
e542c102b2
Move Context back into Executor, add test.
6 years ago
Titouan Rigoudy
e7fc922bb3
Move some Executor functionality into MessageHandler.
6 years ago
Titouan Rigoudy
aceccc72f2
WIP: Add tests for Executor.
6 years ago
Titouan Rigoudy
ef5f6acab8
Add tests for Context.
6 years ago
Titouan Rigoudy
6dee714bfd
Run cargo fmt.
6 years ago
Titouan Rigoudy
78d10224f8
Implement Executor.
6 years ago
Titouan Rigoudy
9aaf843856
Introduce MessageHandler, Dispatcher, Executor.
6 years ago