Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions YACReaderLibrary/server/yacreader_http_server.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -150,3 +150,12 @@ QString YACReaderHttpServer::getPort()

return QString("%1").arg(listener->serverPort());
}

QString YACReaderHttpServer::errorString() const
{
if (listener == nullptr) {
return QString();
}

return listener->errorString();
}
1 change: 1 addition & 0 deletions YACReaderLibrary/server/yacreader_http_server.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ class YACReaderHttpServer : public QObject
bool isRunning();

QString getPort();
QString errorString() const;

signals:
void clientSync();
Expand Down
52 changes: 33 additions & 19 deletions YACReaderLibraryServer/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,8 @@ int main(int argc, char **argv)
} else // error
{
parser.process(app);
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
}
}

Expand Down Expand Up @@ -158,7 +158,7 @@ int start(QCoreApplication &app, QCommandLineParser &parser, const QStringList &
} else if (parser.value("loglevel") == "error") {
logger.setLoggingLevel(QsLogging::ErrorLevel);
} else {
parser.showHelp();
parser.showHelp(1);
}
}

Expand Down Expand Up @@ -209,8 +209,8 @@ int start(QCoreApplication &app, QCommandLineParser &parser, const QStringList &
qint32 port = parser.value("port").toInt(&valid);
if (!valid || port < 1 || port > 65535) {
qout << "Error: " << parser.value("port") << " is not a valid port" << Qt::endl;
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
} else {
httpServer->start(port);
}
Expand All @@ -219,6 +219,15 @@ int start(QCoreApplication &app, QCommandLineParser &parser, const QStringList &
httpServer->start();
}

if (!httpServer->isRunning()) {
QLOG_ERROR() << "Unable to start HTTP server:" << httpServer->errorString();
delete httpServer;
#ifdef Q_OS_WIN
logger.shutDownLoggerThread();
#endif
return 1;
}

printServerInfo(httpServer);

// Update libraries to new versions
Expand Down Expand Up @@ -269,8 +278,8 @@ int createLibrary(QCoreApplication &app, QCommandLineParser &parser, QSettings *

const QStringList args = parser.positionalArguments();
if (args.length() != 3) {
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
}

ConsoleUILibraryCreator *libraryCreatorUI = new ConsoleUILibraryCreator(settings);
Expand All @@ -291,8 +300,8 @@ int updateLibrary(QCoreApplication &app, QCommandLineParser &parser, QSettings *

const QStringList args = parser.positionalArguments();
if (args.length() != 2) {
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
}

ConsoleUILibraryCreator *libraryCreatorUI = new ConsoleUILibraryCreator(settings);
Expand All @@ -314,8 +323,8 @@ int addLibrary(QCoreApplication &app, QCommandLineParser &parser, QSettings *set

const QStringList args = parser.positionalArguments();
if (args.length() != 3) {
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
}

ConsoleUILibraryCreator *libraryCreatorUI = new ConsoleUILibraryCreator(settings);
Expand All @@ -336,8 +345,8 @@ int removeLibrary(QCoreApplication &app, QCommandLineParser &parser, QSettings *

const QStringList args = parser.positionalArguments();
if (args.length() != 2) {
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
}

ConsoleUILibraryCreator *libraryCreatorUI = new ConsoleUILibraryCreator(settings);
Expand Down Expand Up @@ -374,16 +383,16 @@ int setPort(QCoreApplication &app, QCommandLineParser &parser, QTextStream &qout

const QStringList args = parser.positionalArguments();
if (args.length() != 2) {
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
}

bool valid;
qint32 port = args.at(1).toInt(&valid);
if (!valid || port < 1 || port > 65535) {
qout << "Invalid server port";
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
}

QSettings *settings = new QSettings(YACReader::getSettingsPath() + "/" + QCoreApplication::applicationName() + ".ini", QSettings::IniFormat);
Expand All @@ -404,8 +413,8 @@ int rescanXmlInfo(QCoreApplication &app, QCommandLineParser &parser, QSettings *

const QStringList args = parser.positionalArguments();
if (args.length() != 2) {
parser.showHelp();
return 0;
parser.showHelp(1);
return 1;
}

ConsoleUILibraryCreator *libraryCreatorUI = new ConsoleUILibraryCreator(settings);
Expand Down Expand Up @@ -469,6 +478,11 @@ void logSystemAndConfig()
void printServerInfo(YACReaderHttpServer *httpServer)
{
auto addresses = getIpAddresses();
if (addresses.isEmpty()) {
QLOG_WARN() << "Running, but no global network interfaces were detected";
return;
}

QLOG_INFO() << "Running on" << addresses.first() + ":" + httpServer->getPort().toLocal8Bit() << "\n";

qrcodegen::QrCode code = qrcodegen::QrCode::encodeText(
Expand Down
Loading