org.apache.mina.common

Class ExecutorThreadModel

Implemented Interfaces:
IoFilterChainBuilder, ThreadModel

public class ExecutorThreadModel
extends java.lang.Object
implements ThreadModel

A ThreadModel which represents a thread model with an Executor per service. The default underlying Executor is ThreadPoolExecutor, so you can safely downcast the returned Executor of getExecutor() to ThreadPoolExecutor by default.

Fields inherited from interface org.apache.mina.common.IoFilterChainBuilder

NOOP

Fields inherited from interface org.apache.mina.common.ThreadModel

MANUAL

Method Summary

void
buildFilterChain(IoFilterChain chain)
Modifies the specified chain.
Executor
getExecutor()
Returns the underlying Executor of this model.
static ExecutorThreadModel
getInstance(String serviceName)
Returns a ExecutorThreadModel instance for the specified serviceName.
void
setExecutor(Executor executor)
Changes the underlying Executor of this model.

Method Details

buildFilterChain

public void buildFilterChain(IoFilterChain chain)
            throws Exception
Modifies the specified chain.
Specified by:
buildFilterChain in interface IoFilterChainBuilder

getExecutor

public Executor getExecutor()
Returns the underlying Executor of this model. You can change various properties such as the number of threads by calling methods of the Executor implementation.

getInstance

public static ExecutorThreadModel getInstance(String serviceName)
Returns a ExecutorThreadModel instance for the specified serviceName. Please note that all returned instances will be managed globally; the same instance will be returned if you specified the same service name. Please try to specify different names for different services.
Parameters:
serviceName - the name of the service that needs thread pooling

setExecutor

public void setExecutor(Executor executor)
Parameters:
executor - null to revert to the default setting