diff options
Diffstat (limited to 'loader')
-rw-r--r-- | loader/loader.cxx | 28 | ||||
-rw-r--r-- | loader/options.cli | 38 |
2 files changed, 46 insertions, 20 deletions
diff --git a/loader/loader.cxx b/loader/loader.cxx index 7d8570a..4512b8d 100644 --- a/loader/loader.cxx +++ b/loader/loader.cxx @@ -38,13 +38,13 @@ using namespace brep; namespace pgsql = odb::pgsql; static void -usage () +usage (ostream& os) { - cout << "Usage: brep-loader [options] <file>" << endl - << "File lists internal repositories." << endl - << "Options:" << endl; + os << "Usage: brep-loader [options] <file>" << endl + << "File lists internal repositories." << endl + << "Options:" << endl; - options::print_usage (cout); + options::print_usage (os); } static inline bool @@ -715,25 +715,29 @@ main (int argc, char* argv[]) // if (ops.help ()) { - usage (); + usage (cout); return 0; } if (argc < 2) { - cout << "<file> argument not provided" << endl; - usage (); + cerr << "<file> argument not provided" << endl; + usage (cerr); return 1; } if (argc > 2) { - cout << "unexpected argument encountered" << endl; - usage (); + cerr << "unexpected argument encountered" << endl; + usage (cerr); return 1; } - pgsql::database db ("", "", "brep", ops.db_host (), ops.db_port ()); + pgsql::database db (ops.db_user (), + ops.db_password (), + ops.db_name (), + ops.db_host (), + ops.db_port ()); // Prevent several loader instances from updating DB simultaneously. // @@ -825,7 +829,7 @@ main (int argc, char* argv[]) catch (const cli::exception& e) { cerr << e << endl; - usage (); + usage (cerr); return 1; } // Fully qualified to avoid ambiguity with odb exception. diff --git a/loader/options.cli b/loader/options.cli index 7045a22..e46a548 100644 --- a/loader/options.cli +++ b/loader/options.cli @@ -8,19 +8,41 @@ namespace brep { class options { - bool --help {"Print usage information and exit."}; - bool --version {"Print version and exit."}; + bool --help {"Print usage information and exit."} + bool --version {"Print version and exit."} - string --db-host = "localhost" + string --db-user|-u + { + "<user>", + "Database user name. If not specified, then operating system (login) + name is used." + } + + string --db-password + { + "<pass>", + "Database password. If not specified, then login without password is + expected to work." + } + + string --db-name|-n = "brep" + { + "<name>", + "Database name. If not specified, then '\cb{brep}' is used by default." + } + + string --db-host|-h { "<host>", - "Connect database server using specified host or socket directory." - }; + "Database host name, address, or socket. If not specified, then connect + to \cb{localhost} using the operating system-default mechanism + (Unix-domain socket, etc)." + } - uint16_t --db-port = 5432 + uint16_t --db-port|-p = 0 { "<port>", - "Connect database server using specified port." - }; + "Database port number. If not specified, the default port is used." + } }; } |