mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-02 19:17:10 +00:00
SocketClient owns a background reader thread, dispatches incoming messages to a handler, and auto-reconnects with exponential backoff when the transport drops. AgentTransport abstracts the socket so JVM unit tests drive the client through piped streams while the Android runtime uses LocalSocket over the abstract namespace. Send is exposed to consumers via a MessageSender passed to onConnected. Writes are serialized under the output stream lock.