1#ifndef joedb_Client_Command_Processor_declared
2#define joedb_Client_Command_Processor_declared
20 void pull(std::ostream &out, std::chrono::milliseconds wait);
21 void print_status(std::ostream &out);
26 static void sleep(
int seconds, std::ostream &out);
27 virtual std::string
get_name()
const {
return "readonly_client";}
31 blob_processor(
client.get_journal().get_file()),
51 const std::string &command,
52 std::istream ¶meters,
67 std::string get_name()
const override {
return "writable_client";}
77 const std::string &command,
78 std::istream ¶meters,
Status process_command(const std::string &command, std::istream ¶meters, std::istream &in, std::ostream &out) override
virtual std::string get_name() const
void run_interpreter(Command_Interpreter &interpreter, std::istream &in, std::ostream &out)
Client_Command_Processor(Client &client)
void write_prompt(std::ostream &out) const override
static void sleep(int seconds, std::ostream &out)
Handle concurrent access to a file with a joedb::Connection.
void set_parent(const Command_Interpreter *new_parent)
void main_loop(std::istream &in, std::ostream &out)
void add_processor(Command_Processor &processor)
Status process_command(const std::string &command, std::istream ¶meters, std::istream &in, std::ostream &out) override
Writable_Client_Command_Processor(Writable_Client &client)
Writable specialization of Client.