Commit Graph

23 Commits

Author SHA1 Message Date
Michael Pfaff 2aaa043bd2
See message
- **Breaking change**: Multiple functions renamed in `src/java.rs`. This is not bumping the major version because these functions are considered internal.
- Fix disconnecting dead-lock
- `Client::execute` now disconnects when `Error::ConnectionClosed` or `Error::ConnectionClosedWhileSending` is encountered
- Use `tracing` instead of `log`
- Add the `instrument` attribute to most `Client` functions
- Remove unnecessary `Arc` from JNI bindings
2022-03-26 23:06:08 -04:00
Michael Pfaff 04af242ca7
Overhaul (part 2)
- No more worker thread
- Fully async io thanks to Tokio
- Updated libs
- Client is no longer bound to a specific client id
2022-02-03 15:56:37 -05:00
Michael Pfaff 326354d3b4
Overhaul (part 1) 2022-02-03 09:52:53 -05:00
Patrick Auernig eb6152effe Add longer delay after reconnect attempts 2018-12-06 02:05:23 +01:00
Patrick Auernig 184abdc07f Rewrite connection manager 2018-12-06 01:05:06 +01:00
Patrick Auernig ecd391a44e Remove disconnect method from Connection
Use Drop implementation instead
2018-12-06 01:05:06 +01:00
Patrick Auernig caaae615f0 Move handshake and ping into Connection trait 2018-12-06 01:05:06 +01:00
Patrick Auernig 2ffc0cd97c Remove useless static variable 2018-04-10 13:06:44 +02:00
Patrick Auernig 56326618a4 Remove unused imports 2018-04-07 13:39:06 +02:00
Patrick Auernig f43c9697ae Fix Windows disconnect method 2018-04-07 13:34:00 +02:00
Patrick Auernig 4443423407 Add dummy disconnect method for Windows connection 2018-04-07 13:27:59 +02:00
Patrick Auernig a1e77c9c35 Implement reconnection logic
Still needs some changes to handle
* Retrying message send
* Resubscribing current event subscriptions
* Make non-blocking again
2018-04-07 13:22:50 +02:00
Patrick Auernig d370cb6432 Add connection manager 2018-04-06 21:51:01 +02:00
Patrick Auernig 95d748f211 Model restructuring
* Remove old Command payload and replace with generic one.
* Move Rich Presence model back to src/models.
* Add Subscription command, Ready event and Error event models.
* Add subscribe method to client and implement simple error detection.
2018-04-06 02:28:14 +02:00
Patrick Auernig 60c7f4762f Use default SocketConnection for current platform 2018-04-03 16:01:23 +02:00
Patrick Auernig 2b06570fa2 Fix named_pipe import and remove unused ones 2018-04-03 12:14:12 +02:00
Patrick Auernig b8e4697555 Move some common methods into Connection trait 2018-04-03 12:03:08 +02:00
tenrys 620e9a6b26 Added Windows connection support 2018-04-02 21:42:57 +00:00
Patrick Auernig 1e3e9485df Import restructuring
Use new grouping syntax from Rust 1.25
Group `use` in following order:
std, external, internal
2018-03-29 23:40:56 +02:00
Patrick Auernig 2635086e97 Use byteorder crate instead of byte 2018-03-24 15:15:48 +01:00
Patrick Auernig e853fa94a1 Set fixed read buffer size 2018-03-23 22:54:30 +01:00
Patrick Auernig 00c61cfa72 Represent opcodes as enum instead of u32 2018-03-23 22:54:23 +01:00
Patrick Auernig 53bab6857e Add Connection trait and implement UnixConnection 2018-03-22 22:54:49 +01:00