code: public static <T> Callable<T> loggingDecorator(Callable<T> callable) {
      if (callable instanceof MDCPropagatingCallable) {
        return callable;
      }
      return new MDCPropagatingCallable<T>(callable);
    }
docs: Creates an {@link Callable<T>} which propagates the MDC
  information across thread boundaries.
  @param callable the {@link Callable<T>} to wrap
  @return a new instance of {@link Callable<T>}