该类继承自IoFilterAdapter,主要完成两件事
1、记录事件
2、再把会话事件传递到下一个过滤器中处理,
最后交给IoHandler处理
/*
*/
package org.apache.mina.filter.logging;
import org.apache.mina.core.filterchain.IoFilter;
import org.apache.mina.core.filterchain.IoFilterAdapter;
import org.apache.mina.core.session.IdleStatus;
import org.apache.mina.core.session.IoEventType;
import org.apache.mina.core.session.IoSession;
import org.apache.mina.core.write.WriteRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Logs all MINA protocol events. Each event can be
* tuned to调整 use a different level based on the user's specific requirements. Methods
* are in place that allow the user to use either the get or set method for each event
* and pass in the {@link IoEventType} and the {@link LogLevel}.
*
* By default, all events are logged to the {@link LogLevel#INFO} level except
* {@link IoFilterAdapter#exceptionCaught(IoFilter.NextFilter, IoSession, Throwable)},
* which is logged to {@link LogLevel#WARN}.
* @org.apache.xbean.XBean
*/
public class LoggingFilter extends IoFilterAdapter {
/** The logger name */
private final String name;
/** The logger */
private final Logger logger;
/** The log level for the exceptionCaught event. Default to WARN. */
private LogLevel exceptionCaughtLevel = LogLevel.WARN;
/** The log level for the messageSent event. Default to INFO. */
private LogLevel messageSentLevel = LogLevel.INFO;
/** The log level for the messageReceived event. Default to INFO. */
private LogLevel messageReceivedLevel = LogLevel.INFO;
/** The log level for the sessionCreated event. Default to INFO. */
private LogLevel sessionCreatedLevel = LogLevel.INFO;
/** The log level