Epic #21022
Before we can actually implement the MessagePack Hub Protocol in the Java Client, we need to identify a suitable MessagePack library. Some of our requirements:
- Open-Source with permissive license.
- Must be relatively well-adopted.
- Must support the necessary data types described in Hub Protocol (we don't use anything funky so this should be straightforward)
- Ideally, it should support a "reader/writer" style API (like Utf8JsonWriter and Utf8JsonReader), a serialization API (like JsonSerializer) and support interop (i.e. be able to inject a serialized object into the output while using the writer API, and vice-versa for reading). This allows us higher performance without compromising user flexibility, and allows the user to configure the serializer without messing with the SignalR framing.