7#ifdef JOEDB_HAS_NETWORKING
27#ifdef JOEDB_HAS_NETWORKING
40 out <<
"\n<connection> is one of:\n";
41 for (
size_t i = 0; i < builders.size(); i++)
48 out<< builders[i]->get_name();
53 out <<
' ' << builders[i]->get_parameters_description();
62 for (
const auto &b: builders)
64 if (std::strcmp(b->get_name(), name) == 0)
68 std::ostringstream message;
69 message <<
"Unknown connection type: " << name <<
'\n';
71 throw Exception(message.str());
75 Connection &Connection_Parser::build
78 Connection_Builder &builder,
80 const char *
const *
const argv,
86 argc < builder.get_min_parameters() ||
87 argc > builder.get_max_parameters()
90 const char * description = builder.get_parameters_description();
92 description =
"no parameters";
95 std::string(
"Wrong number of connection arguments. Expected: ") +
96 std::string(description)
100 return builder.build(argc, argv, file);
108 const char *
const * argv,
112 const char * connection_name;
116 connection_name = builders[0]->get_name();
118 connection_name = argv[arg_index++];
120 std::cerr <<
"Creating connection (" << connection_name <<
") ... ";
124 get_builder(connection_name),
void print_help(std::ostream &out) const