code: @SuppressWarnings("checkstyle:illegalcatch")
    private byte[] runTask() throws TaskCallFailure {
      try {
        final byte[] result;
        if (this.memento.isPresent()) {
          LOG.log(Level.FINEST, "Calling Task.call() with a memento");
          result = this.task.call(this.memento.get());
        } else {
          LOG.log(Level.FINEST, "Calling Task.call() without a memento");
          result = this.task.call(null);
        }
        LOG.log(Level.FINEST, "Task.call() exited cleanly.");
        return result;
      } catch (final Throwable throwable) {
        throw new TaskCallFailure(throwable);
      }
    }
docs: Calls the Task.call() method and catches exceptions it may throw.
  
  @return the return value of Task.call()
  @throws TaskCallFailure if any Throwable was caught from the Task.call() method.
  That throwable would be the cause of the TaskCallFailure.