public class NioSender extends AbstractSender
| Modifier and Type | Field and Description | 
|---|---|
| protected XByteBuffer | ackbuf | 
| protected boolean | complete | 
| protected boolean | connecting | 
| protected byte[] | current | 
| protected DatagramChannel | dataChannel | 
| protected ByteBuffer | readbuf | 
| protected int | remaining | 
| protected Selector | selector | 
| protected SocketChannel | socketChannel | 
| protected ByteBuffer | writebuf | 
| Constructor and Description | 
|---|
| NioSender() | 
| Modifier and Type | Method and Description | 
|---|---|
| void | connect()connect - blocking in this operation | 
| void | disconnect()disconnect
 TODO Implement this org.apache.catalina.tribes.transport.IDataSender method | 
| byte[] | getMessage() | 
| Selector | getSelector() | 
| boolean | isComplete() | 
| boolean | process(SelectionKey key,
       boolean waitForAck)State machine to send data. | 
| protected boolean | read(SelectionKey key) | 
| void | reset() | 
| void | setComplete(boolean complete) | 
| void | setMessage(byte[] data)sendMessage | 
| void | setMessage(byte[] data,
          int offset,
          int length) | 
| void | setSelector(Selector selector) | 
| protected boolean | write(SelectionKey key) | 
getAddress, getAttempt, getConnectTime, getDestination, getDirect, getDirectBuffer, getKeepAliveCount, getKeepAliveTime, getMaxRetryAttempts, getOoBInline, getPort, getRequestCount, getRxBufSize, getSoKeepAlive, getSoLingerOn, getSoLingerTime, getSoReuseAddress, getSoTrafficClass, getTcpNoDelay, getThrowOnFailedAck, getTimeout, getTxBufSize, getUdpPort, getUdpRxBufSize, getUdpTxBufSize, isConnected, isUdpBased, keepalive, setAddress, setAttempt, setConnected, setConnectTime, setDestination, setDirect, setDirectBuffer, setKeepAliveCount, setKeepAliveTime, setMaxRetryAttempts, setOoBInline, setPort, setRequestCount, setRxBufSize, setSoKeepAlive, setSoLingerOn, setSoLingerTime, setSoReuseAddress, setSoTrafficClass, setTcpNoDelay, setThrowOnFailedAck, setTimeout, setTxBufSize, setUdpBased, setUdpPort, setUdpRxBufSize, setUdpTxBufSize, transferPropertiesprotected Selector selector
protected SocketChannel socketChannel
protected DatagramChannel dataChannel
protected ByteBuffer readbuf
protected ByteBuffer writebuf
protected volatile byte[] current
protected XByteBuffer ackbuf
protected int remaining
protected boolean complete
protected boolean connecting
public boolean process(SelectionKey key, boolean waitForAck) throws IOException
key - The key to usewaitForAck - Wait for an acktrue if the processing was successfulIOException - An IO error occurredprotected boolean read(SelectionKey key) throws IOException
IOExceptionprotected boolean write(SelectionKey key) throws IOException
IOExceptionpublic void connect()
             throws IOException
connect in interface DataSenderconnect in class AbstractSenderIOException - TODO Implement this org.apache.catalina.tribes.transport.IDataSender methodpublic void disconnect()
disconnect in interface DataSenderdisconnect in class AbstractSenderpublic void reset()
public void setMessage(byte[] data)
                throws IOException
data - ChannelMessageIOException - TODO Implement this org.apache.catalina.tribes.transport.IDataSender methodpublic void setMessage(byte[] data,
              int offset,
              int length)
                throws IOException
IOExceptionpublic byte[] getMessage()
public boolean isComplete()
public Selector getSelector()
public void setSelector(Selector selector)
public void setComplete(boolean complete)
Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.