Package org.apache.mina.common
Interface IoHandler
-
- All Known Implementing Classes:
ChainedIoHandler
,DemuxingIoHandler
,IoHandlerAdapter
,SingleSessionIoHandlerDelegate
,StreamIoHandler
public interface IoHandler
Handles all I/O events fired by MINA.- See Also:
IoHandlerAdapter
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
exceptionCaught(IoSession session, java.lang.Throwable cause)
Invoked when any exception is thrown by userIoHandler
implementation or by MINA.void
messageReceived(IoSession session, java.lang.Object message)
Invoked when a message is received.void
messageSent(IoSession session, java.lang.Object message)
Invoked when a message written byIoSession.write(Object)
is sent out.void
sessionClosed(IoSession session)
Invoked when a connection is closed.void
sessionCreated(IoSession session)
Invoked from an I/O processor thread when a new connection has been created.void
sessionIdle(IoSession session, IdleStatus status)
Invoked with the relatedIdleStatus
when a connection becomes idle.void
sessionOpened(IoSession session)
Invoked when a connection has been opened.
-
-
-
Method Detail
-
sessionCreated
void sessionCreated(IoSession session) throws java.lang.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.- Throws:
java.lang.Exception
-
sessionOpened
void sessionOpened(IoSession session) throws java.lang.Exception
Invoked when a connection has been opened. This method is invoked aftersessionCreated(IoSession)
. The biggest difference fromsessionCreated(IoSession)
is that it's invoked from other thread than an I/O processor thread once thread modesl is configured properly.- Throws:
java.lang.Exception
-
sessionClosed
void sessionClosed(IoSession session) throws java.lang.Exception
Invoked when a connection is closed.- Throws:
java.lang.Exception
-
sessionIdle
void sessionIdle(IoSession session, IdleStatus status) throws java.lang.Exception
Invoked with the relatedIdleStatus
when 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.- Throws:
java.lang.Exception
-
exceptionCaught
void exceptionCaught(IoSession session, java.lang.Throwable cause) throws java.lang.Exception
Invoked when any exception is thrown by userIoHandler
implementation or by MINA. Ifcause
is instanceofIOException
, MINA will close the connection automatically.- Throws:
java.lang.Exception
-
messageReceived
void messageReceived(IoSession session, java.lang.Object message) throws java.lang.Exception
Invoked when a message is received.- Throws:
java.lang.Exception
-
messageSent
void messageSent(IoSession session, java.lang.Object message) throws java.lang.Exception
Invoked when a message written byIoSession.write(Object)
is sent out.- Throws:
java.lang.Exception
-
-