Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## 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.

Version:
  $Rev: 562343 $, $Date: 2007-08-03 07:53:44 +0200 (Fri, 03 Aug 2007) $
Author:
  The Apache MINA Project (dev@mina.apache.org)
See Also:
  `IoHandlerAdapter`

Method Summary
`void` | `exceptionCaught(IoSession session, Throwable cause)` Invoked when any exception is thrown by user `IoHandler` implementation or by MINA.
`void` | `messageReceived(IoSession session, Object message)` Invoked when a message is received.
`void` | `messageSent(IoSession session, Object message)` Invoked when a message written by `IoSession.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 related `IdleStatus` when a connection becomes idle.
`void` | `sessionOpened(IoSession session)` Invoked when a connection has been opened.

Method Detail

### sessionCreated

    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.

  Throws:
    `Exception`

### sessionOpened

    void sessionOpened(IoSession session)
                       throws Exception

  Invoked when a connection has been opened. This method is invoked after `sessionCreated(IoSession)`. The biggest difference from `sessionCreated(IoSession)` is that it's invoked from other thread than an I/O processor thread once thread modesl is configured properly.

  Throws:
    `Exception`

### sessionClosed

    void sessionClosed(IoSession session)
                       throws Exception

  Invoked when a connection is closed.

  Throws:
    `Exception`

### sessionIdle

    void sessionIdle(IoSession session,
                     IdleStatus status)
                     throws Exception

  Invoked with the related `IdleStatus` 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:
    `Exception`

### exceptionCaught

    void exceptionCaught(IoSession session,
                         Throwable cause)
                         throws Exception

  Invoked when any exception is thrown by user `IoHandler` implementation or by MINA. If `cause` is instanceof `IOException`, MINA will close the connection automatically.

  Throws:
    `Exception`

### messageReceived

    void messageReceived(IoSession session,
                         Object message)
                         throws Exception

  Invoked when a message is received.

  Throws:
    `Exception`

### messageSent

    void messageSent(IoSession session,
                     Object message)
                     throws Exception

  Invoked when a message written by `IoSession.write(Object)` is sent out.

  Throws:
    `Exception`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004-2008 Apache MINA Project. All Rights Reserved.