----------------------------------------------------------------------------- start------------------------------------------------------------------------ -----------------------------------------------------------------------------
| 137 | // start------------------------------------------------------------------------ |
| 138 | // ----------------------------------------------------------------------------- |
| 139 | int start(QCoreApplication &app, QCommandLineParser &parser, const QStringList &args, QSettings *settings, QTextStream &qout) |
| 140 | { |
| 141 | parser.clearPositionalArguments(); |
| 142 | parser.addPositionalArgument("start", "Start YACReaderLibraryServer"); |
| 143 | parser.process(app); |
| 144 | |
| 145 | QString destLog = YACReader::getSettingsPath() + "/yacreaderlibrary.log"; |
| 146 | QDir().mkpath(YACReader::getSettingsPath()); |
| 147 | |
| 148 | Logger &logger = Logger::instance(); |
| 149 | |
| 150 | if (parser.isSet("loglevel")) { |
| 151 | if (parser.value("loglevel") == "trace") { |
| 152 | logger.setLoggingLevel(QsLogging::TraceLevel); |
| 153 | } else if (parser.value("loglevel") == "info") { |
| 154 | logger.setLoggingLevel(QsLogging::InfoLevel); |
| 155 | } else if (parser.value("loglevel") == "debug") { |
| 156 | logger.setLoggingLevel(QsLogging::DebugLevel); |
| 157 | } else if (parser.value("loglevel") == "warn") { |
| 158 | logger.setLoggingLevel(QsLogging::WarnLevel); |
| 159 | } else if (parser.value("loglevel") == "error") { |
| 160 | logger.setLoggingLevel(QsLogging::ErrorLevel); |
| 161 | } else { |
| 162 | parser.showHelp(1); |
| 163 | } |
| 164 | } |
| 165 | |
| 166 | DestinationPtrU fileDestination(DestinationFactory::MakeFileDestination( |
| 167 | destLog, LogRotationOption::EnableLogRotation, MaxSizeBytes(1048576), MaxOldLogCount(2))); |
| 168 | DestinationPtrU debugDestination(DestinationFactory::MakeDebugOutputDestination()); |
| 169 | logger.addDestination(std::move(debugDestination)); |
| 170 | logger.addDestination(std::move(fileDestination)); |
| 171 | |
| 172 | QTranslator translator; |
| 173 | QString sufix = QLocale::system().name(); |
| 174 | #if defined Q_OS_UNIX && !defined Q_OS_MACOS |
| 175 | translator.load(QString(DATADIR) + "/yacreader/languages/yacreaderlibrary_" + sufix); |
| 176 | #else |
| 177 | translator.load(QCoreApplication::applicationDirPath() + "/languages/yacreaderlibrary_" + sufix); |
| 178 | #endif |
| 179 | app.installTranslator(&translator); |
| 180 | |
| 181 | QTranslator viewerTranslator; |
| 182 | #if defined Q_OS_UNIX && !defined Q_OS_MACOS |
| 183 | viewerTranslator.load(QString(DATADIR) + "/yacreader/languages/yacreader_" + sufix); |
| 184 | #else |
| 185 | viewerTranslator.load(QCoreApplication::applicationDirPath() + "/languages/yacreader_" + sufix); |
| 186 | #endif |
| 187 | app.installTranslator(&viewerTranslator); |
| 188 | |
| 189 | qRegisterMetaType<ComicDB>("ComicDB"); |
| 190 | |
| 191 | QLOG_INFO() << "YACReaderLibraryServer attempting to start"; |
| 192 | |
| 193 | logSystemAndConfig(); |
| 194 | |
| 195 | if (YACReaderLocalServer::isRunning()) // allow one server instance |
| 196 | { |
no test coverage detected