Package org.apache.mina.filter.executor
Class ExecutorFilter
- java.lang.Object
-
- org.apache.mina.common.IoFilterAdapter
-
- org.apache.mina.filter.executor.ExecutorFilter
-
- All Implemented Interfaces:
IoFilter
public class ExecutorFilter extends IoFilterAdapter
A filter that forward events toExecutor
in backport-util-concurrent. You can apply various thread model by inserting this filter to theIoFilterChain
.Please note that this filter doesn't manage the life cycle of the underlying
Executor
. You have to destroy or stop it by yourself.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
ExecutorFilter.Event
protected static class
ExecutorFilter.EventType
-
Nested classes/interfaces inherited from interface org.apache.mina.common.IoFilter
IoFilter.NextFilter, IoFilter.WriteRequest
-
-
Constructor Summary
Constructors Constructor Description 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.
-
Method Summary
-
Methods inherited from class org.apache.mina.common.IoFilterAdapter
destroy, init, onPostAdd, onPostRemove, onPreAdd, onPreRemove
-
-
-
-
Constructor Detail
-
ExecutorFilter
public ExecutorFilter()
Creates a new instace with the default thread pool implementation (new ThreadPoolExecutor(16, 16, 60, TimeUnit.SECONDS, new LinkedBlockingQueue() )).
-
ExecutorFilter
public ExecutorFilter(java.util.concurrent.Executor executor)
Creates a new instance with the specified executor.
-
-
Method Detail
-
getExecutor
public java.util.concurrent.Executor getExecutor()
Returns the underlyingExecutor
instance this filter uses.
-
sessionCreated
public void sessionCreated(IoFilter.NextFilter nextFilter, IoSession session)
Description copied from interface:IoFilter
FiltersIoHandler.sessionCreated(IoSession)
event.- Specified by:
sessionCreated
in interfaceIoFilter
- Overrides:
sessionCreated
in classIoFilterAdapter
-
sessionOpened
public void sessionOpened(IoFilter.NextFilter nextFilter, IoSession session)
Description copied from interface:IoFilter
FiltersIoHandler.sessionOpened(IoSession)
event.- Specified by:
sessionOpened
in interfaceIoFilter
- Overrides:
sessionOpened
in classIoFilterAdapter
-
sessionClosed
public void sessionClosed(IoFilter.NextFilter nextFilter, IoSession session)
Description copied from interface:IoFilter
FiltersIoHandler.sessionClosed(IoSession)
event.- Specified by:
sessionClosed
in interfaceIoFilter
- Overrides:
sessionClosed
in classIoFilterAdapter
-
sessionIdle
public void sessionIdle(IoFilter.NextFilter nextFilter, IoSession session, IdleStatus status)
Description copied from interface:IoFilter
FiltersIoHandler.sessionIdle(IoSession,IdleStatus)
event.- Specified by:
sessionIdle
in interfaceIoFilter
- Overrides:
sessionIdle
in classIoFilterAdapter
-
exceptionCaught
public void exceptionCaught(IoFilter.NextFilter nextFilter, IoSession session, java.lang.Throwable cause)
Description copied from interface:IoFilter
FiltersIoHandler.exceptionCaught(IoSession,Throwable)
event.- Specified by:
exceptionCaught
in interfaceIoFilter
- Overrides:
exceptionCaught
in classIoFilterAdapter
-
messageReceived
public void messageReceived(IoFilter.NextFilter nextFilter, IoSession session, java.lang.Object message)
Description copied from interface:IoFilter
FiltersIoHandler.messageReceived(IoSession,Object)
event.- Specified by:
messageReceived
in interfaceIoFilter
- Overrides:
messageReceived
in classIoFilterAdapter
-
messageSent
public void messageSent(IoFilter.NextFilter nextFilter, IoSession session, java.lang.Object message)
Description copied from interface:IoFilter
FiltersIoHandler.messageSent(IoSession,Object)
event.- Specified by:
messageSent
in interfaceIoFilter
- Overrides:
messageSent
in classIoFilterAdapter
-
processEvent
protected void processEvent(IoFilter.NextFilter nextFilter, IoSession session, ExecutorFilter.EventType type, java.lang.Object data)
-
filterWrite
public void filterWrite(IoFilter.NextFilter nextFilter, IoSession session, IoFilter.WriteRequest writeRequest)
Description copied from interface:IoFilter
FiltersIoSession.write(Object)
method invocation.- Specified by:
filterWrite
in interfaceIoFilter
- Overrides:
filterWrite
in classIoFilterAdapter
-
filterClose
public void filterClose(IoFilter.NextFilter nextFilter, IoSession session) throws java.lang.Exception
Description copied from interface:IoFilter
FiltersIoSession.close()
method invocation.- Specified by:
filterClose
in interfaceIoFilter
- Overrides:
filterClose
in classIoFilterAdapter
- Throws:
java.lang.Exception
-
-