public class ExecutorFilter extends IoFilterAdapter
Executor
in
backport-util-concurrent.
You can apply various thread model by inserting this filter to the IoFilterChain
.
Please note that this filter doesn't manage the life cycle of the underlying
Executor
. You have to destroy or stop it by yourself.
限定符和类型 | 类和说明 |
---|---|
protected static class |
ExecutorFilter.Event |
protected static class |
ExecutorFilter.EventType |
IoFilter.NextFilter, IoFilter.WriteRequest
构造器和说明 |
---|
ExecutorFilter()
Creates a new instace with the default thread pool implementation
(new ThreadPoolExecutor(16, 16, 60, TimeUnit.SECONDS, new LinkedBlockingQueue() )).
|
ExecutorFilter(java.util.concurrent.Executor executor)
Creates a new instance with the specified executor.
|
destroy, init, onPostAdd, onPostRemove, onPreAdd, onPreRemove
public ExecutorFilter()
public ExecutorFilter(java.util.concurrent.Executor executor)
public java.util.concurrent.Executor getExecutor()
Executor
instance this filter uses.public void sessionCreated(IoFilter.NextFilter nextFilter, IoSession session)
IoFilter
IoHandler.sessionCreated(IoSession)
event.sessionCreated
在接口中 IoFilter
sessionCreated
在类中 IoFilterAdapter
public void sessionOpened(IoFilter.NextFilter nextFilter, IoSession session)
IoFilter
IoHandler.sessionOpened(IoSession)
event.sessionOpened
在接口中 IoFilter
sessionOpened
在类中 IoFilterAdapter
public void sessionClosed(IoFilter.NextFilter nextFilter, IoSession session)
IoFilter
IoHandler.sessionClosed(IoSession)
event.sessionClosed
在接口中 IoFilter
sessionClosed
在类中 IoFilterAdapter
public void sessionIdle(IoFilter.NextFilter nextFilter, IoSession session, IdleStatus status)
IoFilter
IoHandler.sessionIdle(IoSession,IdleStatus)
event.sessionIdle
在接口中 IoFilter
sessionIdle
在类中 IoFilterAdapter
public void exceptionCaught(IoFilter.NextFilter nextFilter, IoSession session, java.lang.Throwable cause)
IoFilter
IoHandler.exceptionCaught(IoSession,Throwable)
event.exceptionCaught
在接口中 IoFilter
exceptionCaught
在类中 IoFilterAdapter
public void messageReceived(IoFilter.NextFilter nextFilter, IoSession session, java.lang.Object message)
IoFilter
IoHandler.messageReceived(IoSession,Object)
event.messageReceived
在接口中 IoFilter
messageReceived
在类中 IoFilterAdapter
public void messageSent(IoFilter.NextFilter nextFilter, IoSession session, java.lang.Object message)
IoFilter
IoHandler.messageSent(IoSession,Object)
event.messageSent
在接口中 IoFilter
messageSent
在类中 IoFilterAdapter
protected void processEvent(IoFilter.NextFilter nextFilter, IoSession session, ExecutorFilter.EventType type, java.lang.Object data)
public void filterWrite(IoFilter.NextFilter nextFilter, IoSession session, IoFilter.WriteRequest writeRequest)
IoFilter
IoSession.write(Object)
method invocation.filterWrite
在接口中 IoFilter
filterWrite
在类中 IoFilterAdapter
public void filterClose(IoFilter.NextFilter nextFilter, IoSession session) throws java.lang.Exception
IoFilter
IoSession.close()
method invocation.filterClose
在接口中 IoFilter
filterClose
在类中 IoFilterAdapter
java.lang.Exception