org.apache.tomcat.util.net
Class NioBlockingSelector

java.lang.Object
  extended by org.apache.tomcat.util.net.NioBlockingSelector

public class NioBlockingSelector
extends java.lang.Object


Constructor Summary
NioBlockingSelector()
           
 
Method Summary
static int read(java.nio.ByteBuffer buf, NioChannel socket, long readTimeout)
          Performs a blocking read using the bytebuffer for data to be read If the selector parameter is null, then it will perform a busy read that could take up a lot of CPU cycles.
static int write(java.nio.ByteBuffer buf, NioChannel socket, long writeTimeout)
          Performs a blocking write using the bytebuffer for data to be written If the selector parameter is null, then it will perform a busy write that could take up a lot of CPU cycles.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NioBlockingSelector

public NioBlockingSelector()
Method Detail

write

public static int write(java.nio.ByteBuffer buf,
                        NioChannel socket,
                        long writeTimeout)
                 throws java.io.IOException
Performs a blocking write using the bytebuffer for data to be written If the selector parameter is null, then it will perform a busy write that could take up a lot of CPU cycles.

Parameters:
buf - ByteBuffer - the buffer containing the data, we will write as long as (buf.hasRemaining()==true)
socket - SocketChannel - the socket to write data to
writeTimeout - long - the timeout for this write operation in milliseconds, -1 means no timeout
Returns:
int - returns the number of bytes written
Throws:
java.io.EOFException - if write returns -1
java.net.SocketTimeoutException - if the write times out
java.io.IOException - if an IO Exception occurs in the underlying socket logic

read

public static int read(java.nio.ByteBuffer buf,
                       NioChannel socket,
                       long readTimeout)
                throws java.io.IOException
Performs a blocking read using the bytebuffer for data to be read If the selector parameter is null, then it will perform a busy read that could take up a lot of CPU cycles.

Parameters:
buf - ByteBuffer - the buffer containing the data, we will read as until we have read at least one byte or we timed out
socket - SocketChannel - the socket to write data to
selector - Selector - the selector to use for blocking, if null then a busy read will be initiated
readTimeout - long - the timeout for this read operation in milliseconds, -1 means no timeout
Returns:
int - returns the number of bytes read
Throws:
java.io.EOFException - if read returns -1
java.net.SocketTimeoutException - if the read times out
java.io.IOException - if an IO Exception occurs in the underlying socket logic


Copyright © 2000-2007 Apache Software Foundation. All Rights Reserved.