private static <T> void debug(T data, Function<? super T, String> message) {
    if (LOG.isDebugEnabled()) {
      LOG.debug(message.apply(data));
    }
  }
private static <T> void debug(T data, Function<? super T, String> message)