Author: akarasulu
Date: Thu Feb 14 15:06:00 2008
New Revision: 627904
URL: http://svn.apache.org/viewvc?rev=627904&view=rev
Log:
making asyncweb use the MdcInjectionFilter and moving executor to front to free
up IoProcessors quickly
Modified:
mina/asyncweb/trunk/server/src/main/java/org/apache/asyncweb/server/transport/mina/MinaTransport.java
Modified:
mina/asyncweb/trunk/server/src/main/java/org/apache/asyncweb/server/transport/mina/MinaTransport.java
URL:
http://svn.apache.org/viewvc/mina/asyncweb/trunk/server/src/main/java/org/apache/asyncweb/server/transport/mina/MinaTransport.java?rev=627904&r1=627903&r2=627904&view=diff
==============================================================================
---
mina/asyncweb/trunk/server/src/main/java/org/apache/asyncweb/server/transport/mina/MinaTransport.java
(original)
+++
mina/asyncweb/trunk/server/src/main/java/org/apache/asyncweb/server/transport/mina/MinaTransport.java
Thu Feb 14 15:06:00 2008
@@ -24,11 +24,13 @@
import java.net.InetSocketAddress;
import java.util.concurrent.ExecutorService;
+import org.apache.mina.common.DefaultIoFilterChainBuilder;
import org.apache.mina.common.IoEventType;
import org.apache.mina.filter.executor.ExecutorFilter;
import org.apache.mina.filter.executor.OrderedThreadPoolExecutor;
import org.apache.mina.filter.logging.LogLevel;
import org.apache.mina.filter.logging.LoggingFilter;
+import org.apache.mina.filter.logging.MdcInjectionFilter;
import org.apache.mina.transport.socket.SocketAcceptor;
import org.apache.mina.transport.socket.nio.NioSocketAcceptor;
import org.apache.asyncweb.server.ServiceContainer;
@@ -189,10 +191,14 @@
boolean success = false;
try {
- acceptor.getFilterChain().addLast( "threadPool", new
ExecutorFilter( eventExecutor ) );
+ DefaultIoFilterChainBuilder chain = acceptor.getFilterChain();
+
+ chain.addFirst( "threadPool", new ExecutorFilter( eventExecutor )
);
acceptor.setReuseAddress( true );
acceptor.getSessionConfig().setReuseAddress( true );
+ chain.addLast("mdc", new MdcInjectionFilter() );
+
if ( isLoggingTraffic )
{
LOG.debug( "Configuring traffic logging filter" );
@@ -207,7 +213,7 @@
filter.setLogLevel( IoEventType.SESSION_OPENED, logLevel );
filter.setLogLevel( IoEventType.SET_TRAFFIC_MASK, logLevel );
filter.setLogLevel( IoEventType.WRITE, logLevel );
- acceptor.getFilterChain().addFirst( "LoggingFilter", filter );
+ acceptor.getFilterChain().addLast( "logging", filter );
}
// TODO make this configurable instead of hardcoding like this