class BlobLoader

Defined at line 33 of file ../../src/storage/blobfs/blob_loader.h

BlobLoader is responsible for loading blobs from disk, decoding them and verifying their

contents as needed.

Public Methods

void BlobLoader (BlobLoader && o)

Defined at line 37 of file ../../src/storage/blobfs/blob_loader.h

BlobLoader & operator= (BlobLoader && o)

Defined at line 38 of file ../../src/storage/blobfs/blob_loader.h

void ~BlobLoader ()

Defined at line 66 of file ../../src/storage/blobfs/blob_loader.cc

zx::result<std::unique_ptr<BlobLoader>> Create (TransactionManager * txn_manager, BlockIteratorProvider * block_iter_provider, NodeFinder * node_finder, std::shared_ptr<BlobfsMetrics> metrics, DecompressorCreatorConnector * decompression_connector)

Creates a BlobLoader.

Defined at line 68 of file ../../src/storage/blobfs/blob_loader.cc

zx::result<LoaderInfo> LoadBlob (uint32_t node_index)

Loads the merkle tree for the blob referenced |inode|, and prepare a pager-backed VMO for

data.

This method verifies the following correctness properties:

- The stored merkle tree is well-formed.

- The blob's merkle root in |inode| matches the root of the merkle tree stored on-disk.

This method does *NOT* immediately verify the integrity of the blob's data, this will be

lazily verified by the pager as chunks of the blob are loaded.

Defined at line 103 of file ../../src/storage/blobfs/blob_loader.cc