code: private CallableStatement prepareCall(MethodInvocation<Connection> methodInvocation) throws Throwable {
          String sql = methodInvocation.getArgAt(0, String.class);
          CallableStatement result = (CallableStatement) methodInvocation.proceed();
          result = proxyFactory.wrapCallableStatement(result, sql);
          return result;
      }
docs: Wrap Statement during {@link Connection#prepareCall(String)}
  @param methodInvocation Current {@link Connection#prepareCall(String)}  invocation
  @return Proxified {@link CallableStatement}