Class IoAcceptorFactoryBean
java.lang.Object
org.apache.mina.integration.spring.IoAcceptorFactoryBean
- All Implemented Interfaces:
org.springframework.beans.factory.DisposableBean
,org.springframework.beans.factory.FactoryBean
,org.springframework.beans.factory.InitializingBean
public class IoAcceptorFactoryBean
extends Object
implements org.springframework.beans.factory.FactoryBean, org.springframework.beans.factory.InitializingBean, org.springframework.beans.factory.DisposableBean
Spring
FactoryBean
which enables the bindings of an IoAcceptor
to be configured using Spring. Example of usage:
<!-- This makes it possible to specify java.net.SocketAddress values (e.g. :80 below) as Strings. They will be converted into java.net.InetSocketAddress objects by Spring. --> <bean class="org.springframework.beans.factory.config.CustomEditorConfigurer"> <property name="customEditors"> <map> <entry key="java.net.SocketAddress"> <bean class="org.apache.mina.integration.spring.InetSocketAddressEditor"/> </entry> </map> </property> </bean> <!-- The IoHandler implementation --> <bean id="httpHandler" class="com.example.MyHttpHandler"> ... </bean> <bean id="filterChainBuilder" class="org.apache.mina.integration.spring.DefaultIoFilterChainBuilderFactoryBean"> <property name="filters"> <list> <bean class="org.apache.mina.filter.LoggingFilter"/> </list> </property> </bean> <!-- By default MINA uses an ExecutorThreadModel. This demonstrates how to use your own with some non default settings. The threadModel will be set on the SocketAcceptorConfig defined below. To configure a ExecutorFilter directly you will have to use the ThreadModel.MANUAL ThreadModel instead. --> <bean id="threadModel" class="org.apache.mina.integration.spring.ExecutorThreadModelFactoryBean"> <property name="serviceName" value="HttpService"/> <property name="executor"> <bean class="org.apache.mina.integration.spring.ThreadPoolExecutorFactoryBean"> <property name="corePoolSize" value="2"/> <property name="maxPoolSize" value="10"/> <property name="keepAliveSeconds" value="30"/> </bean> </property> </bean> <bean id="ioAcceptor" class="org.apache.mina.integration.spring.IoAcceptorFactoryBean"> <property name="target"> <bean class="org.apache.mina.transport.socket.nio.SocketAcceptor"/> </property> <property name="bindings"> <list> <bean class="org.apache.mina.integration.spring.Binding"> <property name="address" value=":80"/> <property name="handler" ref="httpHandler"/> <property name="serviceConfig"> <bean class="org.apache.mina.transport.socket.nio.SocketAcceptorConfig"> <property name="filterChainBuilder" ref="filterChainBuilder"/> <property name="reuseAddress" value="true"/> <property name="threadModel" ref="threadModel"/> </bean> </property> </bean> </list> </property> </bean>
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
destroy()
boolean
void
setBindings
(Binding[] bindings) Sets the bindings to be used by theIoAcceptor
configured by this factory bean.void
setTarget
(org.apache.mina.common.IoAcceptor target) Sets theIoAcceptor
to be configured using this factory bean.
-
Constructor Details
-
IoAcceptorFactoryBean
public IoAcceptorFactoryBean()
-
-
Method Details
-
setTarget
public void setTarget(org.apache.mina.common.IoAcceptor target) Sets theIoAcceptor
to be configured using this factory bean.- Parameters:
target
- the targetIoAcceptor
.
-
setBindings
Sets the bindings to be used by theIoAcceptor
configured by this factory bean.- Parameters:
bindings
- the bindings.- Throws:
IllegalArgumentException
- if the specified value isnull
.- See Also:
-
getObject
- Specified by:
getObject
in interfaceorg.springframework.beans.factory.FactoryBean
- Throws:
Exception
-
getObjectType
- Specified by:
getObjectType
in interfaceorg.springframework.beans.factory.FactoryBean
-
isSingleton
public boolean isSingleton()- Specified by:
isSingleton
in interfaceorg.springframework.beans.factory.FactoryBean
-
afterPropertiesSet
- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
- Throws:
Exception
-
destroy
- Specified by:
destroy
in interfaceorg.springframework.beans.factory.DisposableBean
- Throws:
Exception
-