#include "datanodestore/DataLeafNode.h" #include "datanodestore/DataNodeStore.h" #include "datatreestore/DataTreeStore.h" #include "datatreestore/DataTree.h" #include "BlobStoreOnBlocks.h" #include "BlobOnBlocks.h" using std::unique_ptr; using std::make_unique; using blockstore::BlockStore; using blockstore::Key; namespace blobstore { namespace onblocks { using datanodestore::DataNodeStore; using datatreestore::DataTreeStore; constexpr size_t BlobStoreOnBlocks::BLOCKSIZE_BYTES; BlobStoreOnBlocks::BlobStoreOnBlocks(unique_ptr blockStore) : _dataTreeStore(make_unique(make_unique(std::move(blockStore), BLOCKSIZE_BYTES))) { } BlobStoreOnBlocks::~BlobStoreOnBlocks() { } unique_ptr BlobStoreOnBlocks::create() { return make_unique(_dataTreeStore->createNewTree()); } unique_ptr BlobStoreOnBlocks::load(const Key &key) { return make_unique(_dataTreeStore->load(key)); } } }