12static int write_server_blob(
int argc,
char **argv)
16 std::cerr <<
"usage: " << argv[0] <<
" <port> <blob_string>\n";
17 std::cerr <<
"This program will try to connect to a server on localhost.\n";
18 std::cerr <<
"Before running this program, start a joedb server with:\n";
19 std::cerr <<
"joedb_server -port <port> blobs.joedb\n";
20 std::cerr <<
"You can interactively read and write blobs this way:\n";
21 std::cerr <<
"joedb_client --nodb server network localhost <port>\n";
36 for (
int i = 3; --i >= 0;)
38 const joedb::Blob blob = lock.get_journal().write_blob_data(argv[2]);
40 std::cout <<
"wrote blob with lock: " << blob.
get_position() <<
'\n';
41 std::cout <<
"blob: " << server_file.read_blob_data(blob) <<
'\n';
48 for (
int i = 3; --i >= 0;)
55 std::cout <<
"wrote blob with transaction: " << blob.
get_position() <<
'\n';
56 std::cout <<
"blob: " << server_file.read_blob_data(blob) <<
'\n';
62int main(
int argc,
char **argv)
int64_t get_position() const noexcept
Directly read file served from joedb_server.
Blob write_blob_data(const std::string &data) final
int main_exception_catcher(int(*main)(int, char **), int argc, char **argv)
Catch exception from main.