/** * The next methods are not merged into one because of the time we gain by not creating a new * Object[] with the params. This reduces the cost of not logging by about 20 nanoseconds. */ private final void filterAndLog_0_Or3Plus( final String localFQCN, final Marker marker, final Level level, final String msg, final Object[] params, final Throwable t) { final FilterReply decision = loggerContext.getTurboFilterChainDecision_0_3OrMore(marker, this, level, msg, params, t); if (decision == FilterReply.NEUTRAL) { if (effectiveLevelInt > level.levelInt) { return; } } else if (decision == FilterReply.DENY) { return; } buildLoggingEventAndAppend(localFQCN, marker, level, msg, params, t); }
/** * Method that calls the attached TurboFilter objects based on the logger and the level. * * <p>It is used by isYYYEnabled() methods. * * <p>It returns the typical FilterReply values: ACCEPT, NEUTRAL or DENY. * * @param level * @return the reply given by the TurboFilters */ private FilterReply callTurboFilters(Marker marker, Level level) { return loggerContext.getTurboFilterChainDecision_0_3OrMore( marker, this, level, null, null, null); }