@Override public void onDoneReceive(AsyncReport report) { if (delegate != null) { delegate.onDoneReceive(report); } if (finished.getAndSet(true)) { errors.add("onDoneReceive has been called multiple times."); } if (!taskExecutor.isExecutingInThis()) { errors.add("onDoneReceive must be executed from the context of the executor."); } reportRef.set(report); }
@Override public void onDataArrive(ImageResult data) { if (delegate != null) { delegate.onDataArrive(data); } if (finished.get()) { errors.add("onDataArrive has been called after onDoneReceive."); } if (!taskExecutor.isExecutingInThis()) { errors.add("onDataArrive must be executed from the context of the executor."); } lastResultRef.set(data); numberOfImages.incrementAndGet(); }