Добавлены режимы запуска приложения
This commit is contained in:
parent
402c3f865f
commit
4a5943ce9f
|
@ -46,7 +46,12 @@ void client(const int port, const std::string &host)
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
ap::Hub hub({{ "port", 'p', ap::REQUIRED }, { "host", 'h', ap::REQUIRED }});
|
ap::Hub hub({
|
||||||
|
{ "port", 'p', ap::REQUIRED },
|
||||||
|
{ "host", 'h', ap::OPTIONAL },
|
||||||
|
{ "server", 's', ap::NO },
|
||||||
|
{ "client", 'c', ap::NO }
|
||||||
|
});
|
||||||
hub.readArguments(argc, argv);
|
hub.readArguments(argc, argv);
|
||||||
|
|
||||||
auto optionPort = hub.getOption('p');
|
auto optionPort = hub.getOption('p');
|
||||||
|
@ -55,18 +60,36 @@ int main(int argc, char *argv[])
|
||||||
std::cerr << "Порт не был установлен!" << std::endl;
|
std::cerr << "Порт не был установлен!" << std::endl;
|
||||||
exit(EXIT_FAILURE);
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
auto optionHost = hub.getOption('h');
|
|
||||||
if (!optionHost.isSet())
|
int port = std::stoi(optionPort.getValues()[0]);
|
||||||
|
|
||||||
|
auto optionClient = hub.getOption('c');
|
||||||
|
auto optionServer = hub.getOption('s');
|
||||||
|
|
||||||
|
if (optionClient.isSet())
|
||||||
{
|
{
|
||||||
std::cerr << "Адрес не был установлен!" << std::endl;
|
auto optionHost = hub.getOption('h');
|
||||||
|
if (!optionHost.isSet())
|
||||||
|
{
|
||||||
|
std::cerr << "Адрес не был установлен!" << std::endl;
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
|
}
|
||||||
|
|
||||||
|
std::string host = optionHost.getValues()[0];
|
||||||
|
|
||||||
|
client(port, host);
|
||||||
|
}
|
||||||
|
else if (optionServer.isSet())
|
||||||
|
server(port);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
std::cerr << "Необходимо установить режим запуска:" << std::endl
|
||||||
|
<< "\t-c\t--client\tЗапуск в режиме клиента" << std::endl
|
||||||
|
<< "\t-s\t--server\tЗапуск в режиме сервера" << std::endl
|
||||||
|
<< "\t-h\t--host\t\tУказать IP-адрес сервера" << std::endl
|
||||||
|
<< "\t-p\t--port\t\tУказать порт" << std::endl;
|
||||||
exit(EXIT_FAILURE);
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
int port = std::stoi(optionPort.getValues()[0]);
|
|
||||||
std::string host = optionHost.getValues()[0];
|
|
||||||
|
|
||||||
server(port);
|
|
||||||
// client(port, host);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue