List of usage examples for org.springframework.util.concurrent ListenableFutureTask isDone
boolean isDone();
From source file:com.pepaproch.gtswsdl.client.RateLimitTest.java
private synchronized void addTask(AtomicInteger cc, ScheduledExecutorService schelduler, RateLimit rate, Instant[] end) {//from w w w . jav a 2 s . c o m Callable<Integer> callable = (Callable<Integer>) () -> { return cc.get(); }; ListenableFutureTask request = new ListenableFutureTask(callable); schelduler.schedule(() -> { FutureTask<?> schelduledTask = request; if (!request.isCancelled() && !request.isDone()) { schelduledTask.run(); } }, rate.consumeSlot(), TimeUnit.MILLISECONDS); request.addCallback(new ListenableFutureCallback<Integer>() { @Override public void onSuccess(Integer result) { cc.incrementAndGet(); end[0] = Instant.now(); System.out.println("FINISHEDLISTENBALE: " + result + end[0].toString()); } @Override public void onFailure(Throwable ex) { System.out.println("FAILURE"); } }); }