A minimal Binary HTTP (RFC 9292) codec for Kotlin/JVM, supports only what's needed for OHTTP.
import org.osservatorionessuno.libbhttp.BhttpRequest
import org.osservatorionessuno.libbhttp.encodeRequest
import org.osservatorionessuno.libbhttp.decodeResponse
val requestBytes = encodeRequest(
BhttpRequest("GET", "https", "example.com", "/", headers = listOf("accept" to "*/*")),
)
// ... carry requestBytes (e.g. via OHTTP) and get responseBytes back ...
val response = decodeResponse(responseBytes) // response.statusCode, response.headers, response.bodyval enc = ohttpClient.encapsulateRequest(encodeRequest(myRequest))
// POST enc.bytes to the relay, read the message/ohttp-res body ...
val response = decodeResponse(enc.decapsulateResponse(ohttpResBody))