Class AbstractMetadataBackend

Inheritance Relationships

Derived Types

Class Documentation

class gkfs::metadata::AbstractMetadataBackend

Subclassed by gkfs::metadata::MetadataBackend< ParallaxBackend >, gkfs::metadata::MetadataBackend< RocksDBBackend >, gkfs::metadata::MetadataBackend< T >

Public Functions

virtual ~AbstractMetadataBackend() = default
virtual std::string get(const std::string &key) const = 0
virtual void put(const std::string &key, const std::string &val) = 0
virtual void put_no_exist(const std::string &key, const std::string &val) = 0
virtual void remove(const std::string &key) = 0
virtual bool exists(const std::string &key) = 0
virtual void update(const std::string &old_key, const std::string &new_key, const std::string &val) = 0
virtual off_t increase_size(const std::string &key, size_t size, off_t offset, bool append) = 0
virtual void decrease_size(const std::string &key, size_t size) = 0
virtual std::vector<std::pair<std::string, bool>> get_dirents(const std::string &dir) const = 0
virtual std::vector<std::tuple<std::string, bool, size_t, time_t>> get_dirents_extended(const std::string &dir) const = 0
virtual void iterate_all() const = 0