added Common namespace. cli: use settings instead of env for db path
Cette révision appartient à :
Parent
2161c21e4d
révision
bb4824764c
99
cli/main.cpp
99
cli/main.cpp
@ -10,6 +10,7 @@
|
||||
#include <QSqlError>
|
||||
#include <QMap>
|
||||
#include <QDebug>
|
||||
#include <QSettings>
|
||||
#include <functional>
|
||||
#include <exception>
|
||||
#include "encodingdetector.h"
|
||||
@ -23,64 +24,68 @@
|
||||
#include "commandsearch.h"
|
||||
#include "databasefactory.h"
|
||||
#include "logger.h"
|
||||
#include "../shared/common.h"
|
||||
|
||||
void printUsage(QString argv0)
|
||||
{
|
||||
qInfo() << "Usage: " << argv0 << "command";
|
||||
qInfo() << "Usage: " << argv0 << "command";
|
||||
}
|
||||
|
||||
Command *commandFromName(QString name, SqliteDbService &dbService)
|
||||
{
|
||||
if(name == "add")
|
||||
{
|
||||
return new CommandAdd(dbService);
|
||||
}
|
||||
if(name == "delete")
|
||||
{
|
||||
return new CommandDelete(dbService);
|
||||
}
|
||||
if(name == "update")
|
||||
{
|
||||
return new CommandUpdate(dbService);
|
||||
}
|
||||
if(name == "search")
|
||||
{
|
||||
return new CommandSearch(dbService);
|
||||
}
|
||||
if(name == "add")
|
||||
{
|
||||
return new CommandAdd(dbService);
|
||||
}
|
||||
if(name == "delete")
|
||||
{
|
||||
return new CommandDelete(dbService);
|
||||
}
|
||||
if(name == "update")
|
||||
{
|
||||
return new CommandUpdate(dbService);
|
||||
}
|
||||
if(name == "search")
|
||||
{
|
||||
return new CommandSearch(dbService);
|
||||
}
|
||||
|
||||
return nullptr;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
QCoreApplication app(argc, argv);
|
||||
Common::setupAppInfo();
|
||||
|
||||
QStringList args = app.arguments();
|
||||
QString argv0 = args.takeFirst();
|
||||
if(args.length() < 1)
|
||||
{
|
||||
printUsage(argv0);
|
||||
exit(1);
|
||||
}
|
||||
QCoreApplication app(argc, argv);
|
||||
QStringList args = app.arguments();
|
||||
QString argv0 = args.takeFirst();
|
||||
if(args.length() < 1)
|
||||
{
|
||||
printUsage(argv0);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
QString commandName = args.first();
|
||||
QString connectionString = QProcessEnvironment::systemEnvironment().value("QSS_PATH");
|
||||
DatabaseFactory dbFactory(connectionString);
|
||||
SqliteDbService dbService(dbFactory);
|
||||
Command *cmd = commandFromName(commandName, dbService);
|
||||
if(cmd != nullptr)
|
||||
{
|
||||
try
|
||||
{
|
||||
return cmd->handle(args);
|
||||
}
|
||||
catch(const QSSGeneralException &e)
|
||||
{
|
||||
Logger::error() << "Exception caught, message: " << e.message << endl;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Logger::error() << "Unknown command " << commandName << endl;
|
||||
}
|
||||
return 1;
|
||||
QString commandName = args.first();
|
||||
QSettings settings;
|
||||
QString connectionString = settings.value("dbpath").toString();
|
||||
DatabaseFactory dbFactory(connectionString);
|
||||
SqliteDbService dbService(dbFactory);
|
||||
Command *cmd = commandFromName(commandName, dbService);
|
||||
if(cmd != nullptr)
|
||||
{
|
||||
try
|
||||
{
|
||||
return cmd->handle(args);
|
||||
}
|
||||
catch(const QSSGeneralException &e)
|
||||
{
|
||||
Logger::error() << "Exception caught, message: " << e.message << endl;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Logger::error() << "Unknown command " << commandName << endl;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
22
gui/main.cpp
22
gui/main.cpp
@ -1,19 +1,19 @@
|
||||
#include "mainwindow.h"
|
||||
#include <QApplication>
|
||||
#include <QSettings>
|
||||
#include "mainwindow.h"
|
||||
#include "searchresult.h"
|
||||
#include "pdfpreview.h"
|
||||
#include "../shared/common.h"
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
QCoreApplication::setOrganizationName("quitesimple.org");
|
||||
QCoreApplication::setOrganizationDomain("quitesimple.org");
|
||||
QCoreApplication::setApplicationName("qss");
|
||||
QApplication a(argc, argv);
|
||||
qRegisterMetaType<QVector<SearchResult>>("QVector<SearchResult>");
|
||||
qRegisterMetaType<QVector<PdfPreview>>("QVector<PdfPreview>");
|
||||
qRegisterMetaType<PdfPreview>("PdfPreview");
|
||||
MainWindow w;
|
||||
w.showMaximized();
|
||||
Common::setupAppInfo();
|
||||
QApplication a(argc, argv);
|
||||
qRegisterMetaType<QVector<SearchResult>>("QVector<SearchResult>");
|
||||
qRegisterMetaType<QVector<PdfPreview>>("QVector<PdfPreview>");
|
||||
qRegisterMetaType<PdfPreview>("PdfPreview");
|
||||
MainWindow w;
|
||||
w.showMaximized();
|
||||
|
||||
return a.exec();
|
||||
return a.exec();
|
||||
}
|
||||
|
8
shared/common.cpp
Fichier normal
8
shared/common.cpp
Fichier normal
@ -0,0 +1,8 @@
|
||||
#include "common.h"
|
||||
|
||||
void Common::setupAppInfo()
|
||||
{
|
||||
QCoreApplication::setOrganizationName("quitesimple.org");
|
||||
QCoreApplication::setOrganizationDomain("quitesimple.org");
|
||||
QCoreApplication::setApplicationName("qss");
|
||||
}
|
9
shared/common.h
Fichier normal
9
shared/common.h
Fichier normal
@ -0,0 +1,9 @@
|
||||
#ifndef COMMON_H
|
||||
#define COMMON_H
|
||||
#include <QCoreApplication>
|
||||
|
||||
namespace Common
|
||||
{
|
||||
void setupAppInfo();
|
||||
}
|
||||
#endif
|
@ -26,14 +26,16 @@ DEFINES += QT_DEPRECATED_WARNINGS
|
||||
|
||||
SOURCES += sqlitesearch.cpp \
|
||||
qssgeneralexception.cpp \
|
||||
qssquery.cpp
|
||||
qssquery.cpp \
|
||||
common.cpp
|
||||
|
||||
HEADERS += sqlitesearch.h \
|
||||
filedata.h \
|
||||
searchresult.h \
|
||||
qssgeneralexception.h \
|
||||
token.h \
|
||||
qssquery.h
|
||||
qssquery.h \
|
||||
common.h
|
||||
unix {
|
||||
target.path = /usr/lib
|
||||
INSTALLS += target
|
||||
|
Chargement…
Référencer dans un nouveau ticket
Block a user