Package org.apache.thrift.transport
Class AutoExpandingBufferWriteTransport
java.lang.Object
org.apache.thrift.transport.TTransport
org.apache.thrift.transport.TEndpointTransport
org.apache.thrift.transport.AutoExpandingBufferWriteTransport
- All Implemented Interfaces:
Closeable,AutoCloseable
TTransport for writing to an AutoExpandingBuffer.
-
Field Summary
Fields inherited from class org.apache.thrift.transport.TEndpointTransport
knownMessageSize, remainingMessageSize -
Constructor Summary
ConstructorsConstructorDescriptionAutoExpandingBufferWriteTransport(TConfiguration config, int initialCapacity, int frontReserve) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Closes the transport.getBuf()intbooleanisOpen()Queries whether the transport is open.voidopen()Opens the transport for reading/writing.intread(byte[] buf, int off, int len) Reads up to len bytes into buffer buf, starting at offset off.voidreset()voidwrite(byte[] toWrite, int off, int len) Writes up to len bytes from the buffer.Methods inherited from class org.apache.thrift.transport.TEndpointTransport
checkReadBytesAvailable, countConsumedMessageBytes, getConfiguration, getMaxFrameSize, getMaxMessageSize, resetConsumedMessageSize, setMaxFrameSize, updateKnownMessageSizeMethods inherited from class org.apache.thrift.transport.TTransport
consumeBuffer, flush, getBuffer, getBufferPosition, getBytesRemainingInBuffer, peek, read, readAll, write, write
-
Constructor Details
-
AutoExpandingBufferWriteTransport
public AutoExpandingBufferWriteTransport(TConfiguration config, int initialCapacity, int frontReserve) throws TTransportException Constructor.- Parameters:
config- the configuration to use. Currently used for defining the maximum message size.initialCapacity- the initial capacity of the bufferfrontReserve- space, if any, to reserve at the beginning such that the first write is after this reserve. This allows framed transport to reserve space for the frame buffer length.- Throws:
IllegalArgumentException- if initialCapacity is less than oneIllegalArgumentException- if frontReserve is less than zeroIllegalArgumentException- if frontReserve is greater than initialCapacityTTransportException
-
-
Method Details
-
close
public void close()Description copied from class:TTransportCloses the transport.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classTTransport
-
isOpen
public boolean isOpen()Description copied from class:TTransportQueries whether the transport is open.- Specified by:
isOpenin classTTransport- Returns:
- True if the transport is open.
-
open
Description copied from class:TTransportOpens the transport for reading/writing.- Specified by:
openin classTTransport- Throws:
TTransportException- if the transport could not be opened
-
read
Description copied from class:TTransportReads up to len bytes into buffer buf, starting at offset off.- Specified by:
readin classTTransport- Parameters:
buf- Array to read intooff- Index to start reading atlen- Maximum number of bytes to read- Returns:
- The number of bytes actually read
- Throws:
TTransportException- if there was an error reading data
-
write
Description copied from class:TTransportWrites up to len bytes from the buffer.- Specified by:
writein classTTransport- Parameters:
toWrite- The output data bufferoff- The offset to start writing fromlen- The number of bytes to write- Throws:
TTransportException- if there was an error writing data
-
getBuf
-
getLength
public int getLength()- Returns:
- length of the buffer, including any front reserve
-
reset
public void reset()
-