@Test public void testWaitUntilCompleteWithDuration_timedOut() throws Exception { try { new ParallelJobsFuture(failedJobFutures(3)) .waitUntilComplete(Duration.of(10, MINUTES)); fail("Parallel future must throw exception"); } catch (JobFailedException ex) { assertEquals(ex.getSubExceptions().size(), 3); } }
@Override public void waitUntilComplete() { forEachFuture(JobFuture::waitUntilComplete); }
ParallelJobsFuture implements JobFuture { @Override public void waitUntilComplete() { forEachFuture(JobFuture::waitUntilComplete); } }
ParallelJobsFuture implements JobFuture { @Override public void waitUntilComplete() { forEachFuture(JobFuture::waitUntilComplete); } ParallelJobsFuture(JobFuture... jobs);  ParallelJobsFuture(List<JobFuture> jobs);  ParallelJobsFuture(List<JobInfo> jobInfoList, QueueClient queueClient); }
ParallelJobsFuture implements JobFuture { @Override public void waitUntilComplete() { forEachFuture(JobFuture::waitUntilComplete); } ParallelJobsFuture(JobFuture... jobs);  ParallelJobsFuture(List<JobFuture> jobs);  ParallelJobsFuture(List<JobInfo> jobInfoList, QueueClient queueClient); @Override void waitUntilComplete(); @Override void waitUntilComplete(Duration timeout); @Override CompletableFuture<Void> waitAsync(); }
ParallelJobsFuture implements JobFuture { @Override public void waitUntilComplete() { forEachFuture(JobFuture::waitUntilComplete); } ParallelJobsFuture(JobFuture... jobs);  ParallelJobsFuture(List<JobFuture> jobs);  ParallelJobsFuture(List<JobInfo> jobInfoList, QueueClient queueClient); @Override void waitUntilComplete(); @Override void waitUntilComplete(Duration timeout); @Override CompletableFuture<Void> waitAsync();  }