public static final void useCustomLoggers(final Function<String, ? extends Logger> loggerFactory) {
    """
	Use a custom type of {@link Logger} created through the provided {@link Function},
	which takes a logger name as input.
	<p>
	The previously active logger factory is simply replaced without
	any particular clean-up.
	
	@param loggerFactory the {@link Function} that provides a (possibly cached) {@link Logger}
	given a name.
    """
		String name = LoggerFactory.class.getName();
		loggerFactory.apply(name).debug("Using custom logging");
		LOGGER_FACTORY = loggerFactory::apply;
	}
public static final void useCustomLoggers(final Function<String, ? extends Logger> loggerFactory) {
		String name = LoggerFactory.class.getName();
		loggerFactory.apply(name).debug("Using custom logging");
		LOGGER_FACTORY = loggerFactory::apply;
	}
public static final void useCustomLoggers ( final Function < String , ? extends Logger > loggerFactory ) { String name = LoggerFactory . class . getName ( ) ; loggerFactory . apply ( name ) . debug ( "Using custom logging" ) ; LOGGER_FACTORY = loggerFactory :: apply ; }
Use a custom type of {@link Logger} created through the provided {@link Function},
which takes a logger name as input.
<p>
The previously active logger factory is simply replaced without
any particular clean-up.

@param loggerFactory the {@link Function} that provides a (possibly cached) {@link Logger}
given a name.
Use a custom type of { @link Logger } created through the provided { @link Function } which takes a logger name as input . <p > The previously active logger factory is simply replaced without any particular clean - up .