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 TypeMethodDescriptionvoid
close()
Closes the transport.getBuf()
int
boolean
isOpen()
Queries whether the transport is open.void
open()
Opens the transport for reading/writing.int
read
(byte[] buf, int off, int len) Reads up to len bytes into buffer buf, starting at offset off.void
reset()
void
write
(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, updateKnownMessageSize
Methods 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:TTransport
Closes the transport.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classTTransport
-
isOpen
public boolean isOpen()Description copied from class:TTransport
Queries whether the transport is open.- Specified by:
isOpen
in classTTransport
- Returns:
- True if the transport is open.
-
open
Description copied from class:TTransport
Opens the transport for reading/writing.- Specified by:
open
in classTTransport
- Throws:
TTransportException
- if the transport could not be opened
-
read
Description copied from class:TTransport
Reads up to len bytes into buffer buf, starting at offset off.- Specified by:
read
in 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:TTransport
Writes up to len bytes from the buffer.- Specified by:
write
in 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()
-