public final class NIOTcpMultiplexer extends Object
| Modifier and Type | Field and Description |
|---|---|
protected Map<String,NIOClientSocketHandler> |
clientHandlers |
protected static org.apache.commons.logging.Log |
log |
protected List<NIOServerSocketHandler> |
pendingAcceptHandlers |
protected Selector |
selector |
protected List<NIOServerSocketHandler> |
serverHandlers |
protected int |
socketRecvBufferSize |
protected int |
socketSendBufferSize |
| Constructor and Description |
|---|
NIOTcpMultiplexer(Settings settings,
boolean client)
Constructor (private)
|
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
acceptClient(NIOServerSocketHandler serverHandler,
SocketChannel socketChannel) |
protected void |
addInterest(AbstractSelectableChannel channel,
int interest,
Object attachment,
Selector selector) |
protected void |
dropClientHandler(NIOClientSocketHandler clientHandler,
Selector selector,
boolean linkFailed) |
protected boolean |
finalizeConnect(NIOClientSocketHandler clientHandler,
SocketChannel channel,
Selector selector) |
protected void |
onSelectExit() |
protected boolean |
readAndProcessChannelData(NIOClientSocketHandler clientHandler) |
void |
registerClientSocketHandler(NIOClientSocketHandler clientHandler)
Register a new client socket handler
|
void |
registerServerSocketHandler(NIOServerSocketHandler serverHandler)
Register a new server socket handler
|
void |
stop()
Stop the multiplexer
|
void |
unregisterClientSocketHandler(NIOClientSocketHandler clientHandler) |
void |
unregisterServerSocketHandler(NIOServerSocketHandler serverHandler)
Unregister a new server socket handler
|
protected void |
updateConnectInterest(NIOClientSocketHandler clientHandler,
Selector selector) |
protected void |
updateReadInterest(NIOClientSocketHandler clientHandler,
Selector selector) |
protected void |
updateWriteInterest(NIOClientSocketHandler clientHandler,
Selector selector) |
void |
wakeUp()
Wake up the multiplexer so it has a chance to update read/write interests
|
protected boolean |
writeAndProcessChannelData(NIOClientSocketHandler clientHandler) |
protected static final org.apache.commons.logging.Log log
protected Selector selector
protected int socketSendBufferSize
protected int socketRecvBufferSize
protected List<NIOServerSocketHandler> pendingAcceptHandlers
protected List<NIOServerSocketHandler> serverHandlers
protected Map<String,NIOClientSocketHandler> clientHandlers
public NIOTcpMultiplexer(Settings settings, boolean client) throws PacketTransportException
PacketTransportExceptionprotected void onSelectExit()
public void wakeUp()
public void registerServerSocketHandler(NIOServerSocketHandler serverHandler)
public void registerClientSocketHandler(NIOClientSocketHandler clientHandler)
public void unregisterServerSocketHandler(NIOServerSocketHandler serverHandler)
public void unregisterClientSocketHandler(NIOClientSocketHandler clientHandler)
protected void dropClientHandler(NIOClientSocketHandler clientHandler, Selector selector, boolean linkFailed)
protected boolean acceptClient(NIOServerSocketHandler serverHandler, SocketChannel socketChannel)
protected boolean readAndProcessChannelData(NIOClientSocketHandler clientHandler)
protected boolean writeAndProcessChannelData(NIOClientSocketHandler clientHandler)
protected void updateConnectInterest(NIOClientSocketHandler clientHandler, Selector selector)
protected void updateReadInterest(NIOClientSocketHandler clientHandler, Selector selector)
protected void updateWriteInterest(NIOClientSocketHandler clientHandler, Selector selector)
protected void addInterest(AbstractSelectableChannel channel, int interest, Object attachment, Selector selector)
protected boolean finalizeConnect(NIOClientSocketHandler clientHandler, SocketChannel channel, Selector selector)
public void stop()
Copyright © 2021. All rights reserved.