spring-geode-starter-logging/src/main/java/org/springframework/geode/logging/slf4j/logback/support/LogbackSupport.java
/**
	 * Finds an {@link Appender} with the given {@link String name} from the given {@link Logger}.
	 *
	 * @param <T> {@link Class type} of the {@link Appender}.
	 * @param <E> {@link Class type} of the logging event.
	 * @param logger SLF4J {@link Logger} from which to resolve the {@link Appender}.
	 * @param appenderName a {@link String} containing the name of the {@link Appender} to resolve.
	 * @param appenderType required {@link Class type} of the {@link Appender} to resolve.
	 * @return an {@link Optional} {@link Appender} with the given {@link String name} from the {@link Logger}.
	 * @see ch.qos.logback.core.Appender
	 * @see java.util.Optional
	 * @see org.slf4j.Logger
	 */
Finds an  Appender with the given  String name from the given  Logger.
@param   Class type of the  Appender.
@param   Class type of the logging event.
@param logger SLF4J  Logger from which to resolve the  Appender.
@param appenderName a  String containing the name of the  Appender to resolve.
@param appenderType required  Class type of the  Appender to resolve.
@return an  Optional  Appender with the given  String name from the  Logger.
Finds an Appender with the given String name from the given Logger . @param Class type of the Appender . @param Class type of the logging event . @param logger SLF4J Logger from which to resolve the Appender . @param appenderName a String containing the name of the Appender to resolve . @param appenderType required Class type of the Appender to resolve . @return an Optional Appender with the given String name from the Logger .
public static <E, T extends Appender<E>> Optional<T> resolveAppender(ch.qos.logback.classic.Logger logger,
			String appenderName, Class<T> appenderType) {
		appenderType = nullSafeAppenderType(appenderType);
		return Optional.ofNullable(logger)
			.map(it -> it.getAppender(appenderName))
			.filter(appenderType::isInstance)
			.map(appenderType::cast);
	}
public static < E , T extends Appender < E > > Optional < T > resolveAppender ( ch . qos . logback . classic . Logger logger , String appenderName , Class < T > appenderType ) { appenderType = nullSafeAppenderType ( appenderType ) ; return Optional . ofNullable ( logger ) . map ( it -> it . getAppender ( appenderName ) ) . filter ( appenderType :: isInstance ) . map ( appenderType :: cast ) ; }
Finds an {@link Appender} with the given {@link String name} from the given {@link Logger}.
Finds an { @link Appender } with the given { @link String name } from the given { @link Logger } .