org.apache.mina.api

## Interface IoFilter

All Known Implementing Classes:
  AbstractIoFilter, LoggingFilter, ProtocolCodecFilter, RequestFilter

    public interface IoFilter

Filter are interceptors/processors for incoming data received/sent.

Author:
  Apache MINA Project

### Method Summary

Methods
`void` `messageReceived(IoSession session, Object message, ReadFilterChainController controller)` Invoked when a message is received.
`void` `messageSent(IoSession session, Object message)` Invoked when a high level message was written to the low level O/S buffer.
`void` `messageWriting(IoSession session, WriteRequest message, WriteFilterChainController controller)` Invoked when a message is under writing.
`void` `sessionClosed(IoSession session)` Invoked when a connection is closed.
`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

#### sessionOpened

    void sessionOpened(IoSession session)

Invoked when a connection has been opened.

Parameters:
  `session` - `IoSession` associated with the invocation

#### sessionClosed

    void sessionClosed(IoSession session)

Invoked when a connection is closed.

Parameters:
  `session` - `IoSession` associated with the invocation

#### sessionIdle

    void sessionIdle(IoSession session,
                   IdleStatus status)

Invoked with the related `IdleStatus` when a connection becomes idle.

Parameters:
  `session` - `IoSession` associated with the invocation

#### messageReceived

    void messageReceived(IoSession session,
                       Object message,
                       ReadFilterChainController controller)

Invoked when a message is received.

Parameters:
  `session` - `IoSession` associated with the invocation
  `message` - the incoming message to process

#### messageWriting

    void messageWriting(IoSession session,
                      WriteRequest message,
                      WriteFilterChainController controller)

Invoked when a message is under writing. The filter is supposed to apply the needed transformation.

Parameters:
  `session` - `IoSession` associated with the invocation
  `message` - the message to process before writing

#### messageSent

    void messageSent(IoSession session,
                   Object message)

Invoked when a high level message was written to the low level O/S buffer.

Parameters:
  `session` - `IoSession` associated with the invocation
  `message` - the incoming message to process