org.mortbay.io.nio
Class ChannelEndPoint
java.lang.Object
org.mortbay.io.nio.ChannelEndPoint
- All Implemented Interfaces:
- EndPoint
- Direct Known Subclasses:
- SelectChannelConnector.SelectChannelEndPoint
- public class ChannelEndPoint
- extends Object
- implements EndPoint
- Author:
- gregw
To change the template for this generated type comment go to
Window - Preferences - Java - Code Generation - Code and Comments
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_channel
protected ByteChannel _channel
_gather2
protected ByteBuffer[] _gather2
_gather3
protected ByteBuffer[] _gather3
_socket
protected Socket _socket
_local
protected InetSocketAddress _local
_remote
protected InetSocketAddress _remote
ChannelEndPoint
public ChannelEndPoint(ByteChannel channel)
isBlocking
public boolean isBlocking()
- Specified by:
isBlocking
in interface EndPoint
blockReadable
public void blockReadable(long millisecs)
- Specified by:
blockReadable
in interface EndPoint
blockWritable
public void blockWritable(long millisecs)
- Specified by:
blockWritable
in interface EndPoint
isOpen
public boolean isOpen()
- Specified by:
isOpen
in interface EndPoint
close
public void close()
throws IOException
- Description copied from interface:
EndPoint
- Close any backing stream associated with the buffer
- Specified by:
close
in interface EndPoint
- Throws:
IOException
fill
public int fill(Buffer buffer)
throws IOException
- Description copied from interface:
EndPoint
- Fill the buffer from the current putIndex to it's capacity from whatever
byte source is backing the buffer. The putIndex is increased if bytes filled.
The buffer may chose to do a compact before filling.
- Specified by:
fill
in interface EndPoint
- Returns:
- an
int
value indicating the number of bytes
filled or -1 if EOF is reached.
- Throws:
IOException
flush
public int flush(Buffer buffer)
throws IOException
- Description copied from interface:
EndPoint
- Flush the buffer from the current getIndex to it's putIndex using whatever byte
sink is backing the buffer. The getIndex is updated with the number of bytes flushed.
Any mark set is cleared.
If the entire contents of the buffer are flushed, then an implicit empty() is done.
- Specified by:
flush
in interface EndPoint
- Parameters:
buffer
- The buffer to flush. This buffers getIndex is updated.
- Returns:
- the number of bytes written
- Throws:
IOException
flush
public int flush(Buffer header,
Buffer buffer,
Buffer trailer)
throws IOException
- Description copied from interface:
EndPoint
- Flush the buffer from the current getIndex to it's putIndex using whatever byte
sink is backing the buffer. The getIndex is updated with the number of bytes flushed.
Any mark set is cleared.
If the entire contents of the buffer are flushed, then an implicit empty() is done.
The passed header/trailer buffers are written before/after the contents of this buffer. This may be done
either as gather writes, as a poke into this buffer or as several writes. The implementation is free to
select the optimal mechanism.
- Specified by:
flush
in interface EndPoint
- Parameters:
header
- A buffer to write before flushing this buffer. This buffers getIndex is updated.buffer
- The buffer to flush. This buffers getIndex is updated.trailer
- A buffer to write after flushing this buffer. This buffers getIndex is updated.
- Returns:
- the total number of bytes written.
- Throws:
IOException
getChannel
public ByteChannel getChannel()
- Returns:
- Returns the channel.
getLocalAddr
public String getLocalAddr()
- Specified by:
getLocalAddr
in interface EndPoint
- Returns:
- The local IP address to which this
EndPoint
is bound, or null
if this EndPoint
does not represent a network connection.
getLocalHost
public String getLocalHost()
- Specified by:
getLocalHost
in interface EndPoint
- Returns:
- The local host name to which this
EndPoint
is bound, or null
if this EndPoint
does not represent a network connection.
getLocalPort
public int getLocalPort()
- Specified by:
getLocalPort
in interface EndPoint
- Returns:
- The local port number on which this
EndPoint
is listening, or 0
if this EndPoint
does not represent a network connection.
getRemoteAddr
public String getRemoteAddr()
- Specified by:
getRemoteAddr
in interface EndPoint
- Returns:
- The remote IP address to which this
EndPoint
is connected, or null
if this EndPoint
does not represent a network connection.
getRemoteHost
public String getRemoteHost()
- Specified by:
getRemoteHost
in interface EndPoint
- Returns:
- The host name of the remote machine to which this
EndPoint
is connected, or null
if this EndPoint
does not represent a network connection.
getRemotePort
public int getRemotePort()
- Specified by:
getRemotePort
in interface EndPoint
- Returns:
- The remote port number to which this
EndPoint
is connected, or 0
if this EndPoint
does not represent a network connection.
getConnection
public Object getConnection()
- Specified by:
getConnection
in interface EndPoint