in client/src/main/java/co/elastic/opamp/client/connectivity/http/OkHttpSender.java [55:80]
public CompletableFuture<Response> send(Consumer<OutputStream> writer, int contentLength) {
CompletableFuture<Response> future = new CompletableFuture<>();
okhttp3.Request.Builder builder = new okhttp3.Request.Builder().url(url);
String contentType = "application/x-protobuf";
builder.addHeader("Content-Type", contentType);
RequestBody body = new RawRequestBody(writer, contentLength, MediaType.parse(contentType));
builder.post(body);
try {
okhttp3.Response response = client.newCall(builder.build()).execute();
if (response.isSuccessful()) {
if (response.body() != null) {
future.complete(new OkHttpResponse(response));
}
} else {
future.completeExceptionally(new HttpErrorException(response.code(), response.message()));
}
} catch (IOException e) {
future.completeExceptionally(e);
}
future.completeExceptionally(new IllegalStateException());
return future;
}