code: @Around("anyControllerOrRestControllerWithPublicAsyncMethod()")
  	@SuppressWarnings("unchecked")
  	public Object wrapWithCorrelationId(ProceedingJoinPoint pjp) throws Throwable {
  		Callable<Object> callable = (Callable<Object>) pjp.proceed();
  		TraceContext currentSpan = this.tracing.currentTraceContext().get();
  		if (currentSpan == null) {
  			return callable;
  		}
  		if (log.isDebugEnabled()) {
  			log.debug("Wrapping callable with span [" + currentSpan + "]");
  		}
  		return new TraceCallable<>(this.tracing, this.spanNamer, callable);
  	}
docs: NOSONAR