org.apache.mina.protocol
Interface ProtocolAcceptor

All Superinterfaces:
ProtocolSessionManager, SessionManager
All Known Implementing Classes:
IoProtocolAcceptor, VmPipeAcceptor

public interface ProtocolAcceptor
extends ProtocolSessionManager

Accepts incoming connection, communicates with clients, and fires events to ProtocolHandlers.

Please refer to Reverser example.

You should bind to the desired socket address to accept incoming connections, and then events for incoming connections will be sent to the specified default ProtocolHandler.

Threads accept incoming connections start automatically when bind(SocketAddress, ProtocolProvider) is invoked, and stop when all addresses are unbound.

Version:
$Rev: 332218 $, $Date: 2005-11-10 12:52:42 +0900 $
Author:
The Apache Directory Project (dev@directory.apache.org)

Method Summary
 void bind(SocketAddress address, ProtocolProvider protocolProvider)
          Binds to the specified address and handles incoming connections with the specified protocolProvider.
 ProtocolSession newSession(SocketAddress remoteAddress, SocketAddress localAddress)
          (Optional) Returns a ProtocolSession that is bound to the specified localAddress and remoteAddress which reuses the localAddress that is already bound by ProtocolAcceptor via bind(SocketAddress, ProtocolProvider).
 void unbind(SocketAddress address)
          Unbinds from the specified address.
 
Methods inherited from interface org.apache.mina.protocol.ProtocolSessionManager
getFilterChain
 
Methods inherited from interface org.apache.mina.common.SessionManager
getExceptionMonitor, setExceptionMonitor
 

Method Detail

bind

void bind(SocketAddress address,
          ProtocolProvider protocolProvider)
          throws IOException
Binds to the specified address and handles incoming connections with the specified protocolProvider.

Throws:
IOException - if failed to bind

unbind

void unbind(SocketAddress address)
Unbinds from the specified address.


newSession

ProtocolSession newSession(SocketAddress remoteAddress,
                           SocketAddress localAddress)
(Optional) Returns a ProtocolSession that is bound to the specified localAddress and remoteAddress which reuses the localAddress that is already bound by ProtocolAcceptor via bind(SocketAddress, ProtocolProvider).

This operation is optional. Please throw UnsupportedOperationException if the transport type doesn't support this operation. This operation is usually implemented for connectionless transport types.

Throws:
UnsupportedOperationException - if this operation is not supported
IllegalArgumentException - if the specified localAddress is not bound yet. (see bind(SocketAddress, ProtocolProvider))


Copyright © 2004-2005 . All Rights Reserved.