Package com.sun.corba.ee.impl.transport
Class SocketChannelReader
- java.lang.Object
-
- com.sun.corba.ee.impl.transport.SocketChannelReader
-
public class SocketChannelReader extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description SocketChannelReader(ORB orb)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.nio.ByteBufferallocateBuffer()private java.nio.ByteBufferexpandBuffer(java.nio.ByteBuffer byteBuffer)private booleanhaveFilledBuffer(java.nio.ByteBuffer byteBuffer)private java.nio.ByteBufferprepareToAppendTo(java.nio.ByteBuffer byteBuffer)java.nio.ByteBufferread(java.nio.channels.SocketChannel channel, java.nio.ByteBuffer previouslyReadData, int minNeeded)Reads all currently available data from the socket channel, appending it to any data left from a previous read.private java.nio.ByteBufferreallocateBuffer(java.nio.ByteBuffer byteBuffer)
-
-
-
Field Detail
-
orb
private ORB orb
-
-
Constructor Detail
-
SocketChannelReader
public SocketChannelReader(ORB orb)
-
-
Method Detail
-
read
public java.nio.ByteBuffer read(java.nio.channels.SocketChannel channel, java.nio.ByteBuffer previouslyReadData, int minNeeded) throws java.io.IOExceptionReads all currently available data from the socket channel, appending it to any data left from a previous read.- Parameters:
channel- the channel from which to readpreviouslyReadData- the old data to read; note: all data up to the limit is considered valid.minNeeded- the minimum number of bytes that should be present in the buffer before returning- Returns:
- a buffer containing all old data, with all newly available data appended to it.
- Throws:
java.io.IOException- if an error occurs while reading from the channel.
-
expandBuffer
private java.nio.ByteBuffer expandBuffer(java.nio.ByteBuffer byteBuffer)
-
haveFilledBuffer
private boolean haveFilledBuffer(java.nio.ByteBuffer byteBuffer)
-
prepareToAppendTo
private java.nio.ByteBuffer prepareToAppendTo(java.nio.ByteBuffer byteBuffer)
-
reallocateBuffer
private java.nio.ByteBuffer reallocateBuffer(java.nio.ByteBuffer byteBuffer)
-
allocateBuffer
private java.nio.ByteBuffer allocateBuffer()
-
-