void differentiatedLog(Marker marker, String fqcn, int level, Object message, Throwable t) {

        String m = convertToString(message);
        if (locationAwareLogger != null) {
            locationAwareLogger.log(marker, fqcn, level, m, null, t);
        } else {
            switch (level) {
            case LocationAwareLogger.TRACE_INT:
                slf4jLogger.trace(marker, m, (Throwable) t);
                break;
            case LocationAwareLogger.DEBUG_INT:
                slf4jLogger.debug(marker, m, (Throwable) t);
                break;
            case LocationAwareLogger.INFO_INT:
                slf4jLogger.info(marker, m, (Throwable) t);
                break;
            case LocationAwareLogger.WARN_INT:
                slf4jLogger.warn(marker, m, (Throwable) t);
                break;
            case LocationAwareLogger.ERROR_INT:
                slf4jLogger.error(marker, m, (Throwable) t);
                break;
            }
        }
    }
Determines whether the priority passed as parameter is enabled in the
underlying SLF4J logger. Each log4j priority is mapped directly to its SLF4J
equivalent, except for FATAL which is mapped as ERROR.

@param p the priority to check against
@return true if this logger is enabled for the given level, false otherwise.
log4j-over-slf4j/src/main/java/org/apache/log4j/Category.java