Interface OffloadIndexBlockBuilder
-
- All Known Implementing Classes:
OffloadIndexBlockV2BuilderImpl
@Unstable @LimitedPrivate public interface OffloadIndexBlockBuilderInterface for builder of index block used for offload a ledger to long term storage.
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description OffloadIndexBlockBuilderaddBlock(long firstEntryId, int partId, int blockSize)Add one payload block related information into index block.OffloadIndexBlockbuild()Finalize the immutable OffloadIndexBlock.static OffloadIndexBlockBuildercreate()create an OffloadIndexBlockBuilder.OffloadIndexBlockV2fromStream(java.io.InputStream is)Construct OffloadIndex from an InputStream.OffloadIndexBlockBuilderwithDataBlockHeaderLength(long dataHeaderLength)Specify the length of the block headers in the data object.OffloadIndexBlockBuilderwithDataObjectLength(long dataObjectLength)Specify the length of data object this index is associated with.OffloadIndexBlockBuilderwithLedgerMetadata(org.apache.bookkeeper.client.api.LedgerMetadata metadata)Build index block with the passed in ledger metadata.
-
-
-
Method Detail
-
withLedgerMetadata
OffloadIndexBlockBuilder withLedgerMetadata(org.apache.bookkeeper.client.api.LedgerMetadata metadata)
Build index block with the passed in ledger metadata.- Parameters:
metadata- the ledger metadata
-
addBlock
OffloadIndexBlockBuilder addBlock(long firstEntryId, int partId, int blockSize)
Add one payload block related information into index block. It contains the first entryId in payload block, the payload block Id, and payload block size. This information will be used to consist one index entry in OffloadIndexBlock.- Parameters:
firstEntryId- the first entryId in payload blockpartId- the payload block IdblockSize- the payload block size
-
withDataObjectLength
OffloadIndexBlockBuilder withDataObjectLength(long dataObjectLength)
Specify the length of data object this index is associated with.- Parameters:
dataObjectLength- the length of the data object
-
withDataBlockHeaderLength
OffloadIndexBlockBuilder withDataBlockHeaderLength(long dataHeaderLength)
Specify the length of the block headers in the data object.- Parameters:
dataHeaderLength- the length of the headers
-
build
OffloadIndexBlock build()
Finalize the immutable OffloadIndexBlock.
-
fromStream
OffloadIndexBlockV2 fromStream(java.io.InputStream is) throws java.io.IOException
Construct OffloadIndex from an InputStream.- Throws:
java.io.IOException
-
create
static OffloadIndexBlockBuilder create()
create an OffloadIndexBlockBuilder.
-
-