public class NioChannel extends Object implements ByteChannel
Modifier and Type | Field and Description |
---|---|
protected SecureNioChannel.ApplicationBufferHandler |
bufHandler |
protected static ByteBuffer |
emptyBuf |
protected NioEndpoint.Poller |
poller |
protected SocketChannel |
sc |
protected static StringManager |
sm |
Constructor and Description |
---|
NioChannel(SocketChannel channel,
SecureNioChannel.ApplicationBufferHandler bufHandler) |
Modifier and Type | Method and Description |
---|---|
protected void |
checkInterruptStatus()
This method should be used to check the interrupt status before
attempting a write.
|
void |
close()
Closes this channel.
|
void |
close(boolean force) |
boolean |
flush(boolean block,
Selector s,
long timeout)
Returns true if the network buffer has been flushed out and is empty.
|
boolean |
flushOutbound()
Return true if the buffer wrote data
|
Object |
getAttachment() |
int |
getBufferSize() |
SecureNioChannel.ApplicationBufferHandler |
getBufHandler()
getBufHandler
|
SocketChannel |
getIOChannel()
getIOChannel
|
int |
getOutboundRemaining() |
NioEndpoint.Poller |
getPoller() |
int |
handshake(boolean read,
boolean write) |
boolean |
isClosing()
isClosing
|
boolean |
isHandshakeComplete()
isInitHandshakeComplete
|
boolean |
isOpen()
Tells whether or not this channel is open.
|
int |
read(ByteBuffer dst)
Reads a sequence of bytes from this channel into the given buffer.
|
void |
reset() |
void |
setIOChannel(SocketChannel IOChannel) |
void |
setPoller(NioEndpoint.Poller poller) |
String |
toString() |
int |
write(ByteBuffer src)
Writes a sequence of bytes to this channel from the given buffer.
|
protected static final StringManager sm
protected static ByteBuffer emptyBuf
protected SocketChannel sc
protected SecureNioChannel.ApplicationBufferHandler bufHandler
protected NioEndpoint.Poller poller
public NioChannel(SocketChannel channel, SecureNioChannel.ApplicationBufferHandler bufHandler) throws IOException
IOException
public void reset() throws IOException
IOException
public int getBufferSize()
public boolean flush(boolean block, Selector s, long timeout) throws IOException
block
- Unused. May be used when overriddens
- Unused. May be used when overriddentimeout
- Unused. May be used when overriddentrue
since there is no network buffer
in the regular channelIOException
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
close
in interface Channel
IOException
- If an I/O error occurspublic void close(boolean force) throws IOException
IOException
public boolean isOpen()
public int write(ByteBuffer src) throws IOException
write
in interface WritableByteChannel
src
- The buffer from which bytes are to be retrievedIOException
- If some other I/O error occurspublic int read(ByteBuffer dst) throws IOException
read
in interface ReadableByteChannel
dst
- The buffer into which bytes are to be transferred-1
if
the channel has reached end-of-streamIOException
- If some other I/O error occurspublic Object getAttachment()
public SecureNioChannel.ApplicationBufferHandler getBufHandler()
public NioEndpoint.Poller getPoller()
public SocketChannel getIOChannel()
public boolean isClosing()
public boolean isHandshakeComplete()
public int handshake(boolean read, boolean write) throws IOException
IOException
public void setPoller(NioEndpoint.Poller poller)
public void setIOChannel(SocketChannel IOChannel)
public int getOutboundRemaining()
public boolean flushOutbound() throws IOException
IOException
protected void checkInterruptStatus() throws IOException
IOException
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.