Class OffloadIndexBlockV2BuilderImpl
- java.lang.Object
-
- org.apache.bookkeeper.mledger.offload.jcloud.impl.OffloadIndexBlockV2BuilderImpl
-
- All Implemented Interfaces:
OffloadIndexBlockBuilder,OffloadIndexBlockV2Builder
public class OffloadIndexBlockV2BuilderImpl extends java.lang.Object implements OffloadIndexBlockBuilder, OffloadIndexBlockV2Builder
Interface for builder of index block used for offload a ledger to long term storage.
-
-
Constructor Summary
Constructors Constructor Description OffloadIndexBlockV2BuilderImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description OffloadIndexBlockBuilderaddBlock(long firstEntryId, int partId, int blockSize)Add one payload block related information into index block.OffloadIndexBlockV2BuilderaddBlock(long ledgerId, long firstEntryId, int partId, int blockSize)Add one payload block related information into index block.OffloadIndexBlockV2BuilderImpladdLedgerMeta(java.lang.Long ledgerId, org.apache.bookkeeper.mledger.proto.MLDataFormats.ManagedLedgerInfo.LedgerInfo metadata)Build index block with the passed in ledger metadata.OffloadIndexBlockbuild()Finalize the immutable OffloadIndexBlock.OffloadIndexBlockV2buildV2()Finalize the immutable OffloadIndexBlock.OffloadIndexBlockV2fromStream(java.io.InputStream is)Construct OffloadIndex from an InputStream.OffloadIndexBlockV2BuilderImplwithDataBlockHeaderLength(long dataHeaderLength)Specify the length of the block headers in the data object.OffloadIndexBlockV2BuilderImplwithDataObjectLength(long dataObjectLength)Specify the length of data object this index is associated with.OffloadIndexBlockV2BuilderImplwithLedgerMetadata(org.apache.bookkeeper.client.api.LedgerMetadata metadata)Build index block with the passed in ledger metadata.
-
-
-
Method Detail
-
withDataObjectLength
public OffloadIndexBlockV2BuilderImpl withDataObjectLength(long dataObjectLength)
Description copied from interface:OffloadIndexBlockBuilderSpecify the length of data object this index is associated with.- Specified by:
withDataObjectLengthin interfaceOffloadIndexBlockBuilder- Specified by:
withDataObjectLengthin interfaceOffloadIndexBlockV2Builder- Parameters:
dataObjectLength- the length of the data object
-
withDataBlockHeaderLength
public OffloadIndexBlockV2BuilderImpl withDataBlockHeaderLength(long dataHeaderLength)
Description copied from interface:OffloadIndexBlockBuilderSpecify the length of the block headers in the data object.- Specified by:
withDataBlockHeaderLengthin interfaceOffloadIndexBlockBuilder- Specified by:
withDataBlockHeaderLengthin interfaceOffloadIndexBlockV2Builder- Parameters:
dataHeaderLength- the length of the headers
-
withLedgerMetadata
public OffloadIndexBlockV2BuilderImpl withLedgerMetadata(org.apache.bookkeeper.client.api.LedgerMetadata metadata)
Description copied from interface:OffloadIndexBlockBuilderBuild index block with the passed in ledger metadata.- Specified by:
withLedgerMetadatain interfaceOffloadIndexBlockBuilder- Parameters:
metadata- the ledger metadata
-
addLedgerMeta
public OffloadIndexBlockV2BuilderImpl addLedgerMeta(java.lang.Long ledgerId, org.apache.bookkeeper.mledger.proto.MLDataFormats.ManagedLedgerInfo.LedgerInfo metadata)
Description copied from interface:OffloadIndexBlockV2BuilderBuild index block with the passed in ledger metadata.- Specified by:
addLedgerMetain interfaceOffloadIndexBlockV2Buildermetadata- the ledger metadata
-
addBlock
public OffloadIndexBlockBuilder addBlock(long firstEntryId, int partId, int blockSize)
Description copied from interface:OffloadIndexBlockBuilderAdd 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.- Specified by:
addBlockin interfaceOffloadIndexBlockBuilder- Parameters:
firstEntryId- the first entryId in payload blockpartId- the payload block IdblockSize- the payload block size
-
addBlock
public OffloadIndexBlockV2Builder addBlock(long ledgerId, long firstEntryId, int partId, int blockSize)
Description copied from interface:OffloadIndexBlockV2BuilderAdd 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.- Specified by:
addBlockin interfaceOffloadIndexBlockV2BuilderfirstEntryId- the first entryId in payload blockpartId- the payload block IdblockSize- the payload block size
-
fromStream
public OffloadIndexBlockV2 fromStream(java.io.InputStream is) throws java.io.IOException
Description copied from interface:OffloadIndexBlockBuilderConstruct OffloadIndex from an InputStream.- Specified by:
fromStreamin interfaceOffloadIndexBlockBuilder- Specified by:
fromStreamin interfaceOffloadIndexBlockV2Builder- Throws:
java.io.IOException
-
build
public OffloadIndexBlock build()
Description copied from interface:OffloadIndexBlockBuilderFinalize the immutable OffloadIndexBlock.- Specified by:
buildin interfaceOffloadIndexBlockBuilder
-
buildV2
public OffloadIndexBlockV2 buildV2()
Description copied from interface:OffloadIndexBlockV2BuilderFinalize the immutable OffloadIndexBlock.- Specified by:
buildV2in interfaceOffloadIndexBlockV2Builder
-
-