Package org.apache.thrift.transport
Class AutoExpandingBufferReadTransport
java.lang.Object
org.apache.thrift.transport.TTransport
org.apache.thrift.transport.TEndpointTransport
org.apache.thrift.transport.AutoExpandingBufferReadTransport
- All Implemented Interfaces:
Closeable
,AutoCloseable
TTransport for reading from an AutoExpandingBuffer.
-
Field Summary
Fields inherited from class org.apache.thrift.transport.TEndpointTransport
knownMessageSize, remainingMessageSize
-
Constructor Summary
ConstructorDescriptionAutoExpandingBufferReadTransport
(TConfiguration config, int initialCapacity) -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes the transport.final void
consumeBuffer
(int len) Consume len bytes from the underlying buffer.void
fill
(TTransport inTrans, int length) final byte[]
Access the protocol's underlying buffer directly.final int
Return the index within the underlying buffer that specifies the next spot that should be read from.final int
Get the number of bytes remaining in the underlying buffer.boolean
isOpen()
Queries whether the transport is open.void
open()
Opens the transport for reading/writing.final int
read
(byte[] target, int off, int len) Reads up to len bytes into buffer buf, starting at offset off.void
write
(byte[] buf, 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
-
Constructor Details
-
AutoExpandingBufferReadTransport
public AutoExpandingBufferReadTransport(TConfiguration config, int initialCapacity) throws TTransportException - Throws:
TTransportException
-
-
Method Details
-
fill
- Throws:
TTransportException
-
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:
target
- 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:
buf
- 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
-
consumeBuffer
public final void consumeBuffer(int len) Description copied from class:TTransport
Consume len bytes from the underlying buffer.- Overrides:
consumeBuffer
in classTTransport
- Parameters:
len
- the number of bytes to consume from the underlying buffer.
-
getBuffer
public final byte[] getBuffer()Description copied from class:TTransport
Access the protocol's underlying buffer directly. If this is not a buffered transport, return null.- Overrides:
getBuffer
in classTTransport
- Returns:
- protocol's Underlying buffer
-
getBufferPosition
public final int getBufferPosition()Description copied from class:TTransport
Return the index within the underlying buffer that specifies the next spot that should be read from.- Overrides:
getBufferPosition
in classTTransport
- Returns:
- index within the underlying buffer that specifies the next spot that should be read from
-
getBytesRemainingInBuffer
public final int getBytesRemainingInBuffer()Description copied from class:TTransport
Get the number of bytes remaining in the underlying buffer. Returns -1 if this is a non-buffered transport.- Overrides:
getBytesRemainingInBuffer
in classTTransport
- Returns:
- the number of bytes remaining in the underlying buffer.
Returns -1 if this is a non-buffered transport.
-