20 #ifndef BUILDCACHE_DATA_STORE_HPP_
21 #define BUILDCACHE_DATA_STORE_HPP_
23 #include <base/time_utils.hpp>
51 const std::string&
value()
const {
62 const std::string m_value;
63 const bool m_is_valid =
false;
80 item_t
get_item(
const std::string& key);
90 std::string make_file_path(
const std::string& key);
91 void perform_housekeeping();
93 std::string m_root_dir;
97 #endif // BUILDCACHE_DATA_STORE_HPP_
item_t()
Construct an invalid (empty) data item.
Definition: data_store.hpp:47
Provide access to a local key/value store.
Definition: data_store.hpp:36
int64_t seconds_t
Time in seconds since the Unix epoch.
Definition: time_utils.hpp:31
item_t(const std::string &value)
Construct a valid data item.
Definition: data_store.hpp:43
item_t get_item(const std::string &key)
Get a data item.
Definition: data_store.cpp:107
void remove_item(const std::string &key)
Remove a data item.
Definition: data_store.cpp:125
const std::string & value() const
Definition: data_store.hpp:51
The top level namespace.
Definition: compressor.cpp:34
bool is_valid() const
Check if the item is valid.
Definition: data_store.hpp:57
void clear()
Clear the data store.
Definition: data_store.cpp:129
void store_item(const std::string &key, const std::string &value, const time::seconds_t timeout)
Add or overwrite a data item.
Definition: data_store.cpp:85
A data item.
Definition: data_store.hpp:39
data_store_t(const std::string &name)
Construct a data store.
Definition: data_store.cpp:75