org.apache.mina.common

Interface IoSessionRecycler

Known Implementing Classes:
ExpiringSessionRecycler

public interface IoSessionRecycler

A connectionless transport can recycle existing sessions by assigning an IoSessionRecyler to its IoServiceConfig.

Field Summary

static IoSessionRecycler
NOOP
A dummy recycler that doesn't recycle any sessions.

Method Summary

void
put(IoSession session)
Called when the underlying transport creates or writes a new IoSession.
IoSession
recycle(SocketAddress localAddress, SocketAddress remoteAddress)
Attempts to retrieve a recycled IoSession.
void
remove(IoSession session)
Called when an IoSession is explicitly closed.

Field Details

NOOP

public static final IoSessionRecycler NOOP
A dummy recycler that doesn't recycle any sessions. Using this recycler will make all session lifecycle events to be fired for every I/O for all connectionless sessions.

Method Details

put

public void put(IoSession session)
Called when the underlying transport creates or writes a new IoSession.
Parameters:
session - the new IoSession.

recycle

public IoSession recycle(SocketAddress localAddress,
                         SocketAddress remoteAddress)
Attempts to retrieve a recycled IoSession.
Parameters:
localAddress - the local socket address of the IoSession the transport wants to recycle.
remoteAddress - the remote socket address of the IoSession the transport wants to recycle.
Returns:
a recycled IoSession, or null if one cannot be found.

remove

public void remove(IoSession session)
Called when an IoSession is explicitly closed.
Parameters:
session - the new IoSession.