code: private void failedTasklets(final Exception exception, final List<Integer> taskletIds)
        throws InterruptedException {
  
      final List<TInput> inputs = getInputs(taskletIds);
      final AggregateResult failure = new AggregateResult(exception, inputs);
  
      if (callbackHandler != null) {
        executor.execute(new Runnable() {
          @Override
          public void run() {
            callbackHandler.onFailure(new VortexAggregateException(exception, inputs));
          }
        });
      }
  
      resultQueue.put(new ImmutablePair<>(taskletIds, failure));
    }
docs: Create and queue result for failed Tasklets that are expected and invokes callback.