ジョブのステータスを取得するために Spark Job Server にクエリを実行するための残りのリクエストを作成しています。コードは次のようになります。
private Future<JobResult> getJobResultFuture(String jobId) {
ExecutorService executorService = Executors.newSingleThreadExecutor();
Future<JobResult> resultFuture = executorService.submit(() -> {
while (true) {
JobResult jobResponse = getJobResponse(jobController.getStatus(jobId));
if (jobResponse.isJobComplete()) {
return jobResponse;
}
Thread.sleep(RESPONSE_RETRY_TIME);
}
});
return resultFuture;
}
次のようにジョブサーバーにリクエストを送信しています。
public String getStatus(String jobId) {
WebResource resource = CLIENT.resource(jobServerURL() + "/jobs/" + jobId);
return resource.type(MediaType.TEXT_PLAIN).get(String.class);
}
しかし、これが正しい方法だとは思いません。ジョブサーバーからステータスを取得し、いくつかを実行できるように、ある種のハンドラー/リスナーをWebリクエストに追加する方法を知る必要があるだけですユーザーに通知するような処理の種類。
これを行うライブラリはありますか?