11#ifndef __BE_IO_LISTRECSTORE_H__
12#define __BE_IO_LISTRECSTORE_H__
55 const std::string &pathname);
73 const std::string &key,
74 const void *
const data,
80 const std::string &key)
85 const std::string &key)
const override;
89 const std::string &key,
90 const void *
const data,
91 const uint64_t size)
override final;
95 const std::string &key)
const override;
99 const std::string &key)
const override;
116 const std::string &key)
121 const std::string &pathname)
132 const std::string &description)
override;
136 std::unique_ptr<ListRecordStore::Impl> pimpl;
IO::RecordStore that reads a list of keys from a text file, and retrieves the data from another IO::R...
std::string getPathname() const override
Return the path name of the RecordStore.
uint64_t getSpaceUsed() const override
Obtain real storage utilization.
void remove(const std::string &key) override
Remove a record from the store.
uint64_t length(const std::string &key) const override
Return the length of a record.
void replace(const std::string &key, const void *const data, const uint64_t size) override final
Replace a complete record in a RecordStore.
void sync() const override
Synchronize the entire record store to persistent storage.
std::string sequenceKey(int cursor=BE_RECSTORE_SEQ_NEXT) override
Sequence through a RecordStore, returning the key.
std::string getDescription() const override
Obtain a textual description of the RecordStore.
void insert(const std::string &key, const void *const data, const uint64_t size) override
Insert a record into the store.
void changeDescription(const std::string &description) override
Change the description of the RecordStore.
RecordStore::Record sequence(int cursor=BE_RECSTORE_SEQ_NEXT) override
Sequence through a RecordStore, returning the key/data pairs.
unsigned int getCount() const override
Obtain the number of items in the RecordStore.
void move(const std::string &pathname) override
Move the RecordStore.
~ListRecordStore()
Destructor.
Memory::uint8Array read(const std::string &key) const override
Read a complete record from a store.
void setCursorAtKey(const std::string &key) override
Set the sequence cursor to an arbitrary position within the RecordStore, starting at key.
void flush(const std::string &key) const override
Commit the record's data to storage.
ListRecordStore(const std::string &pathname)
Constructor, always opening read-only.
A class to represent a data storage mechanism.
virtual void insert(const std::string &key, const Memory::uint8Array &data)
Insert a record into the store.
static const int BE_RECSTORE_SEQ_NEXT
Tell sequence to sequence from current position.
virtual void replace(const std::string &key, const Memory::uint8Array &data)
Replace a complete record in a RecordStore.
This software was developed at the National Institute of Standards and Technology (NIST) by employees...