code: @Override
      public void onFailure(Consumer<Throwable> consumer) {
          Validator.requireNonNull(consumer, "Null is not a valid consumer");
          // register a complete handler and ignore any Success responses
          onComplete(result -> {
              // transform Failure to a Success with the Throwable
              // should it be a Success it will be transformed into a Failure and forEach will do nothing
              result.failed().forEach(consumer);
          });
      }
docs: /*
  (non-Javadoc)
  
  @see javascalautils.concurrent.Future#onFailure(java.util.function.Consumer)