Package org.apache.thrift.transport
Class TMemoryBuffer
java.lang.Object
org.apache.thrift.transport.TTransport
org.apache.thrift.transport.TEndpointTransport
org.apache.thrift.transport.TMemoryBuffer
- All Implemented Interfaces:
Closeable,AutoCloseable
Memory buffer-based implementation of the TTransport interface.
-
Field Summary
Fields inherited from class org.apache.thrift.transport.TEndpointTransport
knownMessageSize, remainingMessageSize -
Constructor Summary
ConstructorsConstructorDescriptionTMemoryBuffer(int size) Create a TMemoryBuffer with an initial buffer size of size.TMemoryBuffer(TConfiguration config, int size) Create a TMemoryBuffer with an initial buffer size of size. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Closes the transport.byte[]getArray()inspect()booleanisOpen()Queries whether the transport is open.intlength()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.Output the contents of the memory buffer as a String, using the supplied encodingvoidwrite(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, updateKnownMessageSizeMethods inherited from class org.apache.thrift.transport.TTransport
consumeBuffer, flush, getBuffer, getBufferPosition, getBytesRemainingInBuffer, peek, read, readAll, write, write
-
Constructor Details
-
TMemoryBuffer
Create a TMemoryBuffer with an initial buffer size of size. The internal buffer will grow as necessary to accommodate the size of the data being written to it.- Parameters:
size- the initial size of the buffer- Throws:
TTransportException- on error initializing the underlying transport.
-
TMemoryBuffer
Create a TMemoryBuffer with an initial buffer size of size. The internal buffer will grow as necessary to accommodate the size of the data being written to it.- Parameters:
config- the configuration to use.size- the initial size of the buffer- Throws:
TTransportException- on error initializing the underlying transport.
-
-
Method Details
-
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
public void open()Description copied from class:TTransportOpens the transport for reading/writing.- Specified by:
openin classTTransport
-
close
public void close()Description copied from class:TTransportCloses the transport.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classTTransport
-
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
public void write(byte[] buf, int off, int len) Description copied from class:TTransportWrites up to len bytes from the buffer.- Specified by:
writein classTTransport- Parameters:
buf- The output data bufferoff- The offset to start writing fromlen- The number of bytes to write
-
toString
Output the contents of the memory buffer as a String, using the supplied encoding- Parameters:
charset- the encoding to use- Returns:
- the contents of the memory buffer as a String
-
inspect
-
length
public int length() -
getArray
public byte[] getArray()
-