Package com.mongodb.connection
Interface Stream
-
- All Superinterfaces:
BufferProvider
public interface Stream extends BufferProvider
A full duplex stream of bytes.- Since:
- 3.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
close()
Closes the connection.ServerAddress
getAddress()
The address that this stream is connected to.boolean
isClosed()
Returns the closed state of the connectionvoid
open()
Open the stream.void
openAsync(AsyncCompletionHandler<Void> handler)
Open the stream asynchronously.ByteBuf
read(int numBytes)
Read from the stream, blocking until the requested number of bytes have been read.void
readAsync(int numBytes, AsyncCompletionHandler<ByteBuf> handler)
Read from the stream, asynchronously.void
write(List<ByteBuf> buffers)
Write each buffer in the list to the stream in order, blocking until all are completely written.void
writeAsync(List<ByteBuf> buffers, AsyncCompletionHandler<Void> handler)
Write each buffer in the list to the stream in order, asynchronously.-
Methods inherited from interface com.mongodb.connection.BufferProvider
getBuffer
-
-
-
-
Method Detail
-
open
void open() throws IOException
Open the stream.- Throws:
IOException
- if an I/O error occurs
-
openAsync
void openAsync(AsyncCompletionHandler<Void> handler)
Open the stream asynchronously.- Parameters:
handler
- the completion handler for opening the stream
-
write
void write(List<ByteBuf> buffers) throws IOException
Write each buffer in the list to the stream in order, blocking until all are completely written.- Parameters:
buffers
- the buffers to write- Throws:
IOException
- if there are problems writing to the stream
-
read
ByteBuf read(int numBytes) throws IOException
Read from the stream, blocking until the requested number of bytes have been read.- Parameters:
numBytes
- The number of bytes to read into the returned byte buffer- Returns:
- a byte buffer filled with number of bytes requested
- Throws:
IOException
- if there are problems reading from the stream
-
writeAsync
void writeAsync(List<ByteBuf> buffers, AsyncCompletionHandler<Void> handler)
Write each buffer in the list to the stream in order, asynchronously. This method should return immediately, and invoke the given callback on completion.- Parameters:
buffers
- the buffers to writehandler
- invoked when the read operation has completed
-
readAsync
void readAsync(int numBytes, AsyncCompletionHandler<ByteBuf> handler)
Read from the stream, asynchronously. This method should return immediately, and invoke the given callback when the number of requested bytes have been read.- Parameters:
numBytes
- the number of byteshandler
- invoked when the read operation has completed
-
getAddress
ServerAddress getAddress()
The address that this stream is connected to.- Returns:
- the address
-
close
void close()
Closes the connection.
-
isClosed
boolean isClosed()
Returns the closed state of the connection- Returns:
- true if connection is closed
-
-