public CompletableFuture send()

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;
  }