Package org.apache.mina.core.service
Class IoHandlerAdapter
- java.lang.Object
-
- org.apache.mina.core.service.IoHandlerAdapter
-
- All Implemented Interfaces:
IoHandler
- Direct Known Subclasses:
AbstractLdapConnection,AbstractProxyIoHandler,ChainedIoHandler,DemuxingIoHandler,StreamIoHandler
public class IoHandlerAdapter extends Object implements IoHandler
An adapter class forIoHandler. You can extend this class and selectively override required event handler methods only. All methods do nothing by default.- Author:
- Apache MINA Project
-
-
Constructor Summary
Constructors Constructor Description IoHandlerAdapter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidevent(IoSession session, FilterEvent event)Invoked when a filter event is fired.voidexceptionCaught(IoSession session, Throwable cause)Invoked when any exception is thrown by userIoHandlerimplementation or by MINA.voidinputClosed(IoSession session)Handle the closure of an half-duplex TCP channelvoidmessageReceived(IoSession session, Object message)Invoked when a message is received.voidmessageSent(IoSession session, Object message)Invoked when a message written byIoSession.write(Object)is sent out.voidsessionClosed(IoSession session)Invoked when a connection is closed.voidsessionCreated(IoSession session)Invoked from an I/O processor thread when a new connection has been created.voidsessionIdle(IoSession session, IdleStatus status)Invoked with the relatedIdleStatuswhen a connection becomes idle.voidsessionOpened(IoSession session)Invoked when a connection has been opened.
-
-
-
Method Detail
-
sessionCreated
public void sessionCreated(IoSession session) throws Exception
Invoked from an I/O processor thread when a new connection has been created. Because this method is supposed to be called from the same thread that handles I/O of multiple sessions, please implement this method to perform tasks that consumes minimal amount of time such as socket parameter and user-defined session attribute initialization.- Specified by:
sessionCreatedin interfaceIoHandler- Parameters:
session- The session being created- Throws:
Exception- If we get an exception while processing the create event
-
sessionOpened
public void sessionOpened(IoSession session) throws Exception
Invoked when a connection has been opened. This method is invoked afterIoHandler.sessionCreated(IoSession). The biggest difference fromIoHandler.sessionCreated(IoSession)is that it's invoked from other thread than an I/O processor thread once thread model is configured properly.- Specified by:
sessionOpenedin interfaceIoHandler- Parameters:
session- The session being opened- Throws:
Exception- If we get an exception while processing the open event
-
sessionClosed
public void sessionClosed(IoSession session) throws Exception
Invoked when a connection is closed.- Specified by:
sessionClosedin interfaceIoHandler- Parameters:
session- The session being closed- Throws:
Exception- If we get an exception while processing the close event
-
sessionIdle
public void sessionIdle(IoSession session, IdleStatus status) throws Exception
Invoked with the relatedIdleStatuswhen a connection becomes idle. This method is not invoked if the transport type is UDP; it's a known bug, and will be fixed in 2.0.- Specified by:
sessionIdlein interfaceIoHandler- Parameters:
session- The idling sessionstatus- The session's status- Throws:
Exception- If we get an exception while processing the idle event
-
exceptionCaught
public void exceptionCaught(IoSession session, Throwable cause) throws Exception
Invoked when any exception is thrown by userIoHandlerimplementation or by MINA. Ifcauseis an instance ofIOException, MINA will close the connection automatically.- Specified by:
exceptionCaughtin interfaceIoHandler- Parameters:
session- The session for which we have got an exceptioncause- The exception that has been caught- Throws:
Exception- If we get an exception while processing the caught exception
-
messageReceived
public void messageReceived(IoSession session, Object message) throws Exception
Invoked when a message is received.- Specified by:
messageReceivedin interfaceIoHandler- Parameters:
session- The session that is receiving a messagemessage- The received message- Throws:
Exception- If we get an exception while processing the received message
-
messageSent
public void messageSent(IoSession session, Object message) throws Exception
Invoked when a message written byIoSession.write(Object)is sent out.- Specified by:
messageSentin interfaceIoHandler- Parameters:
session- The session that has sent a full messagemessage- The sent message- Throws:
Exception- If we get an exception while processing the sent message
-
inputClosed
public void inputClosed(IoSession session) throws Exception
Handle the closure of an half-duplex TCP channel- Specified by:
inputClosedin interfaceIoHandler- Parameters:
session- The session which input is being closed- Throws:
Exception- If we get an exception while closing the input
-
event
public void event(IoSession session, FilterEvent event) throws Exception
Invoked when a filter event is fired. Each filter might sent a different event, this is very application specific.
-
-