Interface OffloadIndexBlockV2
- All Superinterfaces:
AutoCloseable,Closeable
- All Known Subinterfaces:
OffloadIndexBlock
- All Known Implementing Classes:
OffloadIndexBlockImpl,OffloadIndexBlockV2Impl
The Index block abstraction used for offload a ledger to long term storage.
-
Method Summary
Modifier and TypeMethodDescriptionlongGet the length of the header in the blocks in the data object.longGet the total size of the data object.intGet the entry count that contained in this index Block.getIndexEntryForEntry(long ledgerId, long messageEntryId) Get the related OffloadIndexEntry that contains the given messageEntryId.org.apache.bookkeeper.client.api.LedgerMetadatagetLedgerMetadata(long ledgerId) Get LedgerMetadata.longgetStartEntryId(long ledgerId) toStream()Get the content of the index block as InputStream.
-
Method Details
-
toStream
Get the content of the index block as InputStream. Read out in format: | index_magic_header | index_block_len | index_entry_count | | data_object_size | segment_metadata_length | segment metadata | index entries ... |- Throws:
IOException
-
getIndexEntryForEntry
Get the related OffloadIndexEntry that contains the given messageEntryId.- Parameters:
messageEntryId- the entry id of message- Returns:
- the offload index entry
- Throws:
IOException
-
getStartEntryId
long getStartEntryId(long ledgerId) -
getEntryCount
int getEntryCount()Get the entry count that contained in this index Block. -
getLedgerMetadata
org.apache.bookkeeper.client.api.LedgerMetadata getLedgerMetadata(long ledgerId) Get LedgerMetadata.- Returns:
-
getDataObjectLength
long getDataObjectLength()Get the total size of the data object. -
getDataBlockHeaderLength
long getDataBlockHeaderLength()Get the length of the header in the blocks in the data object.
-