3 #include <zk/config.hpp>    10 #include "forwards.hpp"    24     static std::shared_ptr<connection> connect(string_view conn_string);
    28     virtual void close() = 0;
    30     virtual future<get_result> 
get(string_view path) = 0;
    32     virtual future<watch_result> watch(string_view path) = 0;
    34     virtual future<get_children_result> get_children(string_view path) = 0;
    36     virtual future<watch_children_result> watch_children(string_view path) = 0;
    38     virtual future<exists_result> exists(string_view path) = 0;
    40     virtual future<watch_exists_result> watch_exists(string_view path) = 0;
    42     virtual future<create_result> create(string_view   path,
    48     virtual future<set_result> 
set(string_view path, 
const buffer& data, 
version check) = 0;
    50     virtual future<void> erase(string_view path, 
version check) = 0;
    52     virtual future<get_acl_result> get_acl(string_view path) 
const = 0;
    54     virtual future<void> set_acl(string_view path, 
const acl& rules, 
acl_version check) = 0;
    56     virtual future<multi_result> commit(
multi_op&& txn) = 0;
    58     virtual future<void> load_fence() = 0;
    72     mutable std::mutex              _state_change_promises_protect;
    73     std::vector<promise<zk::state>> _state_change_promises;
 state
Enumeration of states the client may be at when a watch triggers. 
 
Represents a version of the ACL of a ZNode. 
 
create_mode
When used in client::set, this value determines how the znode is created on the server. 
 
Controls the import of future and promise types. 
 
virtual future< zk::state > watch_state()
Watch for a state change. 
 
Controls the import of the string_view type. 
 
An access control list is a wrapper around acl_rule instances. 
 
Controls the buffer type. 
 
virtual void on_session_event(zk::state new_state)
Call this from derived classes when a session event happens. 
 
Represents a version of the data. 
 
ZKPP_BUFFER_TYPE buffer
The buffer type.