Closeable, Flushable, AutoCloseable, BsonOutputpublic class ByteBufferBsonOutput extends OutputBuffer
| Modifier and Type | Field | Description | 
|---|---|---|
| static int | INITIAL_BUFFER_SIZE | |
| static int | MAX_BUFFER_SIZE | 
| Constructor | Description | 
|---|---|
| ByteBufferBsonOutput(BufferProvider bufferProvider) | Construct an instance that uses the given buffer provider to allocate byte buffers as needs as it grows. | 
| Modifier and Type | Method | Description | 
|---|---|---|
| void | close() | |
| List<ByteBuf> | getByteBuffers() | Get a list of byte buffers that are prepared to be read from; in other words, whose position is 0 and whose limit is the number of
 bytes that should read. | 
| int | getPosition() | Gets the current position in the stream. | 
| int | getSize() | Gets the current size of the stream in number of bytes. | 
| int | pipe(OutputStream out) | Pipe the contents of this output buffer into the given output stream | 
| void | truncateToPosition(int newPosition) | Truncates this stream to the new position. | 
| protected void | write(int absolutePosition,
     int value) | Write the specified byte at the specified position. | 
| void | writeByte(int value) | Write a single byte to the stream. | 
| void | writeBytes(byte[] bytes,
          int offset,
          int length) | Writes  lengthbytes from the byte array, starting atoffset. | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitsize, toByteArray, toString, write, write, write, writeBytes, writeCString, writeDouble, writeInt, writeInt32, writeInt32, writeInt64, writeLong, writeObjectId, writeStringflushpublic static final int INITIAL_BUFFER_SIZE
public static final int MAX_BUFFER_SIZE
public ByteBufferBsonOutput(BufferProvider bufferProvider)
bufferProvider - the non-null buffer providerpublic void writeBytes(byte[] bytes,
                       int offset,
                       int length)
BsonOutputlength bytes from the byte array, starting at offset.bytes - the non-null byte arrayoffset - the offset to start writing fromlength - the number of bytes to writepublic void writeByte(int value)
BsonOutputvalue - the valuepublic int getPosition()
BsonOutputpublic int getSize()
BsonOutputprotected void write(int absolutePosition,
                     int value)
OutputBufferwrite in class OutputBufferabsolutePosition - the position, which must be greater than equal to 0 and at least 4 less than the stream sizevalue - the value to write.  The 24 high-order bits of the value are ignored.public List<ByteBuf> getByteBuffers()
OutputBufferNote that the byte buffers may be read-only.
getByteBuffers in class OutputBufferpublic int pipe(OutputStream out) throws IOException
OutputBufferpipe in class OutputBufferout - the stream to pipe toIOException - if the stream throws an exceptionpublic void truncateToPosition(int newPosition)
BsonOutputtruncateToPosition in interface BsonOutputtruncateToPosition in class OutputBuffernewPosition - the new position, which must be greater than or equal to 0 and less than the current size.public void close()
close in interface AutoCloseableclose in interface BsonOutputclose in interface Closeableclose in class OutputBuffer