mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-28 19:55:48 +03:00
refact 1
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
#include <Systems/Parsers/dataparser.h>
|
||||
#include <Data/typesDataServerClient.h>
|
||||
|
||||
class DataParser;
|
||||
|
||||
class ClientAnswerParser : public QObject
|
||||
{
|
||||
|
||||
@@ -3,11 +3,12 @@
|
||||
#include <QFile>
|
||||
#include <QDomDocument>
|
||||
|
||||
DataParser::DataParser(AssetsManager *assetManager,ProcessingSystem *processingSystem,QObject *parent) :
|
||||
DataParser::DataParser(ProcessingSystem *processingSystem,QObject *parent) :
|
||||
QObject(parent)
|
||||
{
|
||||
qDebug() << "DataParser init thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->processingSystem = processingSystem;
|
||||
this->assetsManager = assetManager;
|
||||
|
||||
clientAnswer = new ClientAnswerParser;
|
||||
clientAnswer->initialize(this);
|
||||
@@ -21,8 +22,6 @@ QObject(parent)
|
||||
processParser->initialize(processingSystem);
|
||||
|
||||
mutex = new QMutex;
|
||||
|
||||
qDebug() << "ParserThread: " << QThread::currentThreadId();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
|
||||
#include "Systems/processingsystem.h"
|
||||
#include "Systems/tools.h"
|
||||
#include "Systems/assetsmanager.h"
|
||||
#include "Systems/logger.h"
|
||||
#include "Systems/Parsers/clientanswerparser.h"
|
||||
#include "dbanswerparser.h"
|
||||
@@ -21,7 +20,6 @@
|
||||
|
||||
class ProcessingSystem;
|
||||
class ClientHandler;
|
||||
class AssetsManager;
|
||||
class ClientAnswerParser;
|
||||
class DBAnswerParser;
|
||||
class DocsAnswerParser;
|
||||
@@ -32,7 +30,7 @@ class DataParser : public QObject
|
||||
|
||||
Q_OBJECT
|
||||
public:
|
||||
DataParser(AssetsManager *assetManager,ProcessingSystem *processingSystem,QObject* parent = nullptr);
|
||||
DataParser(ProcessingSystem *processingSystem,QObject* parent = nullptr);
|
||||
void xmlParser(ClientHandler *client, QByteArray array);
|
||||
void xmlFileDataParse(QByteArray array);
|
||||
|
||||
@@ -53,7 +51,6 @@ private:
|
||||
QMutex *mutex;
|
||||
|
||||
ProcessingSystem *processingSystem;
|
||||
AssetsManager *assetsManager;
|
||||
ClientAnswerParser *clientAnswer;
|
||||
DBAnswerParser *dbAnswer;
|
||||
DocsAnswerParser* docsAnswer;
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
#include <QThread>
|
||||
#include <QXmlStreamReader>
|
||||
#include "assetsmanager.h"
|
||||
|
||||
AssetsManager::AssetsManager(QObject *parent) : QObject(parent)
|
||||
{
|
||||
|
||||
qDebug() << "AssetsManager init thread ID " << QThread::currentThreadId();
|
||||
}
|
||||
|
||||
void AssetsManager::initialize(UpdateController* updateContoller,DataParser *dataParser)
|
||||
void AssetsManager::initialize(UpdateController* updateContoller)
|
||||
{
|
||||
qDebug() << "AssetsManager::initialize thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->updateController = updateContoller;
|
||||
//connect(this,&AssetsManager::sigSaveVersion,updateContoller,&UpdateController::saveVersionToFile);
|
||||
datas = new QList<StreamingVersionData*>;
|
||||
@@ -174,7 +178,7 @@ void AssetsManager::addVersion(StreamingVersionData *data)
|
||||
|
||||
void AssetsManager::createCopyVersion(QString versionName,QString newVersionName,QString author)
|
||||
{
|
||||
qDebug() << "assetManager thread ID " << QThread::currentThreadId();
|
||||
qDebug() << "AssetsManager::createCopyVersion thread ID " << QThread::currentThreadId();
|
||||
StreamingVersionData* data = new StreamingVersionData;
|
||||
|
||||
data->setAbsolutePath(Tools::createSharedPath("/" + newVersionName));
|
||||
|
||||
@@ -5,13 +5,14 @@
|
||||
#include <Systems/updatecontroller.h>
|
||||
#include <Data/StreamingVersionData.h>
|
||||
|
||||
class UpdateController;
|
||||
|
||||
class AssetsManager : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit AssetsManager(QObject *parent = nullptr);
|
||||
void initialize(UpdateController* updateContoller,DataParser *dataParser);
|
||||
void initialize(UpdateController* updateContoller);
|
||||
void addVersion(StreamingVersionData *data);
|
||||
void createCopyVersion(QString versionName,QString newName,QString author);
|
||||
void deleteVersion(QString version);
|
||||
|
||||
@@ -2,11 +2,13 @@
|
||||
|
||||
ChatSystem::ChatSystem()
|
||||
{
|
||||
|
||||
qDebug() << "ChatSystem init thread ID " << QThread::currentThreadId();
|
||||
}
|
||||
|
||||
void ChatSystem::initialize(CommonClientHandler *commonClientHandler, DataParser *dataParser, QMap<int, ClientHandler*> *clientsMap)
|
||||
{
|
||||
qDebug() << "ChatSystem::initialize thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->commonClientHandler = commonClientHandler;
|
||||
this->dataParser = dataParser;
|
||||
this->clientsMap = clientsMap;
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
#include <QObject>
|
||||
#include <Data/typesDataServerClient.h>
|
||||
|
||||
class CommonClientHandler;
|
||||
|
||||
class ChatSystem : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
@@ -2,11 +2,13 @@
|
||||
|
||||
CommonClientHandler::CommonClientHandler(QObject *parent) : QObject(parent)
|
||||
{
|
||||
|
||||
qDebug() << "CommonClientHandler init thread ID " << QThread::currentThreadId();
|
||||
}
|
||||
|
||||
void CommonClientHandler::initialize(QMap<int, ClientHandler *> *clientsMap, ProcessingSystem *processingSystem, DataParser *dataParser)
|
||||
{
|
||||
qDebug() << "CommonClientHandler::initialize thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->clientsMap = clientsMap;
|
||||
this->processingSystem = processingSystem;
|
||||
this->dataParser = dataParser;
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
class ProcessingSystem;
|
||||
class DataParser;
|
||||
class ClientHandler;
|
||||
class Logger;
|
||||
|
||||
class CommonClientHandler : public QObject
|
||||
|
||||
@@ -8,7 +8,7 @@ DocsUpdater::DocsUpdater(UpdateController* updateController, QObject *parent):
|
||||
updateController(updateController),
|
||||
flagStop(false)
|
||||
{
|
||||
|
||||
qDebug() << "DocsUpdater init thread ID " << QThread::currentThreadId();
|
||||
}
|
||||
|
||||
DocsUpdater::~DocsUpdater()
|
||||
@@ -39,7 +39,7 @@ QList<SubProc> DocsUpdater::getListSubProcForDMcode(QString dmCode)
|
||||
|
||||
bool DocsUpdater::slot_updateDocsXML()
|
||||
{
|
||||
qDebug() << "DocsUpdater::updateDocsXML thread ID " << QThread::currentThreadId();
|
||||
qDebug() << "DocsUpdater::slot_updateDocsXML thread ID " << QThread::currentThreadId();
|
||||
|
||||
QMutexLocker locker(&mtxAccess);
|
||||
|
||||
|
||||
@@ -11,6 +11,8 @@ ProcessingSystem::ProcessingSystem(ProviderDBLMS* providerDBLMS, UpdateControlle
|
||||
cfiController(nullptr),
|
||||
providerDBLMS(nullptr)
|
||||
{
|
||||
qDebug() << "ProcessingSystem init thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->providerDBLMS = providerDBLMS;
|
||||
this->updateController = updateController;
|
||||
this->docsUpdater = docsUpdater;
|
||||
@@ -22,6 +24,8 @@ void ProcessingSystem::initialize(MultiThreadServer *server, DataParser *dataPar
|
||||
UpdateController *updateController,
|
||||
ChatSystem *chatSystem)
|
||||
{
|
||||
qDebug() << "ProcessingSystem::initialize thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->commonClientServer = commonClientHandler;
|
||||
this->dataParser = dataParser;
|
||||
this->server = server;
|
||||
@@ -299,7 +303,7 @@ void ProcessingSystem::processingExitUnityClient(ClientHandler *client)
|
||||
|
||||
void ProcessingSystem::processingClientQueryToDB(ClientHandler *client, ClientQueryToDB clientQueryToDB, int id, void* data)
|
||||
{
|
||||
qDebug() << "ProcessingQueryThread " << QThread::currentThreadId();
|
||||
qDebug() << "ProcessingSystem::processingClientQueryToDB thread ID " << QThread::currentThreadId();
|
||||
|
||||
switch (clientQueryToDB.typeQuery)
|
||||
{
|
||||
@@ -696,8 +700,6 @@ void ProcessingSystem::processingClientNotify(ClientHandler *client, ClientNotif
|
||||
}
|
||||
else if(clientNotify.Code == commandDisableClient)
|
||||
{
|
||||
qDebug() << "processing thread: " << QThread::currentThreadId();
|
||||
|
||||
//Фиксируем время выхода Юнити-клиента
|
||||
if (clientData->getClientType() == TypeClientAutorization::TYPE_UNITY_CLIENT)
|
||||
{
|
||||
|
||||
@@ -15,6 +15,8 @@ QObject(parent)
|
||||
|
||||
void RecognizeSystem::initialize(UpdateController *updateController,DataParser* dataParser,SendSystem *sendSystem, ClientHandler *handler)
|
||||
{
|
||||
qDebug() << "RecognizeSystem::initialize thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->updateController = updateController;
|
||||
this->dataParser = dataParser;
|
||||
this->clientHandler = handler;
|
||||
@@ -27,15 +29,13 @@ void RecognizeSystem::initialize(UpdateController *updateController,DataParser*
|
||||
connect(this,&RecognizeSystem::sigCopyVersion,updateController,&UpdateController::createCopyVersion,Qt::AutoConnection);
|
||||
connect(this,&RecognizeSystem::sigXmlParser,dataParser->getProcessParser(),&ProcessParser::slot_read,Qt::AutoConnection);
|
||||
//connect(this,&RecognizeSystem::sigRecalculateDocs,server,&ServerLMSWidget::slot_UpdateDocs,Qt::AutoConnection);
|
||||
connect(this,&RecognizeSystem::sigSendDocs,sendSystem,&SendSystem::sendDocs,Qt::AutoConnection);
|
||||
|
||||
qDebug() << "Recognize init thread ID " << QThread::currentThreadId();
|
||||
connect(this,&RecognizeSystem::sigSendDocs,sendSystem,&SendSystem::sendDocs,Qt::AutoConnection);
|
||||
}
|
||||
|
||||
void RecognizeSystem::recognize()
|
||||
{
|
||||
QMutexLocker locker(mutex);
|
||||
qDebug() << "Recognize thread ID " << QThread::currentThreadId();
|
||||
qDebug() << "RecognizeSystem::recognize thread ID " << QThread::currentThreadId();
|
||||
QMutexLocker locker(mutex);
|
||||
QDataStream stream(socket);
|
||||
stream.setVersion(QDataStream::Qt_DefaultCompiledVersion);
|
||||
QByteArray data;
|
||||
|
||||
@@ -7,12 +7,13 @@ SendSystem::SendSystem(QObject *parent) : QObject(parent)
|
||||
|
||||
void SendSystem::initialize(DataParser *dataParser,QMutex *globalMutex)
|
||||
{
|
||||
this->dataParser = dataParser;
|
||||
connect(this,&SendSystem::sigSendXMLmessage,dataParser->ClientAnswer(),&ClientAnswerParser::message,Qt::AutoConnection);
|
||||
connect(this,&SendSystem::sigSendNotify,dataParser->ClientAnswer(),&ClientAnswerParser::notify,Qt::DirectConnection); //потому что возвращает значение
|
||||
connect(this,&SendSystem::sigSendVersion,dataParser->ClientAnswer(),&ClientAnswerParser::currentVersion,Qt::AutoConnection);
|
||||
qDebug() << "SendSystem::initialize thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->dataParser = dataParser;
|
||||
//connect(this,&SendSystem::sigSendXMLmessage,dataParser->ClientAnswer(),&ClientAnswerParser::message,Qt::AutoConnection); //сигнал не используется
|
||||
connect(this,&SendSystem::sigSendNotify,dataParser->ClientAnswer(),&ClientAnswerParser::notify,Qt::DirectConnection); //потому что возвращает значение
|
||||
//connect(this,&SendSystem::sigSendVersion,dataParser->ClientAnswer(),&ClientAnswerParser::currentVersion,Qt::AutoConnection); //сигнал не используется
|
||||
|
||||
qDebug() << "SendSystem thread: " << QThread::currentThreadId();
|
||||
mutex = globalMutex;
|
||||
}
|
||||
|
||||
@@ -26,7 +27,8 @@ void SendSystem::setClient(Client *client,QTcpSocket *socket)
|
||||
|
||||
void SendSystem::sendNotify(QString notify)
|
||||
{
|
||||
qDebug() << "SendNotify thread: " << QThread::currentThreadId();
|
||||
qDebug() << "SendSystem::sendNotify thread ID " << QThread::currentThreadId();
|
||||
|
||||
auto answer = emit sigSendNotify(notify);
|
||||
sendXmlAnswer(answer);
|
||||
}
|
||||
@@ -140,7 +142,7 @@ void SendSystem::sendVersion()
|
||||
|
||||
void SendSystem::sendFileBlockWithRename(QString path, QString newName)
|
||||
{
|
||||
qDebug() << "sendFileBlockWithRename thread: " << QThread::currentThreadId();
|
||||
qDebug() << "SendSystem::sendFileBlockWithRename thread ID " << QThread::currentThreadId();
|
||||
|
||||
QDataStream stream(socket);
|
||||
stream.setVersion(QDataStream::Qt_DefaultCompiledVersion);
|
||||
@@ -232,7 +234,8 @@ void SendSystem::sendPacketType(PacketType packetType)
|
||||
|
||||
void SendSystem::sendXmlAnswer(QByteArray array, PacketType packetType)
|
||||
{
|
||||
qDebug() << "SendSystemThread: " << QThread::currentThreadId();
|
||||
qDebug() << "SendSystem::sendXmlAnswer thread ID " << QThread::currentThreadId();
|
||||
|
||||
Logger::instance().log("SEND TO: "+ client->getLogin() + " " + enumToString(packetType) + "\n Text: " +
|
||||
QString(array),LogLevel::DEBUG);
|
||||
|
||||
@@ -315,11 +318,6 @@ void SendSystem::socketClose()
|
||||
socket->close();
|
||||
}
|
||||
|
||||
bool SendSystem::socketFlush() //TODO: проверить использование
|
||||
{
|
||||
return socket->flush();
|
||||
}
|
||||
|
||||
void SendSystem::sendStop()
|
||||
{
|
||||
isSendStopped = true;
|
||||
|
||||
@@ -35,7 +35,6 @@ public:
|
||||
void sendXmlAnswer(QByteArray array, PacketType packetType = PacketType::TYPE_XMLANSWER);
|
||||
void sendNeedUpdate(bool flag,quint64 size,quint64 fileCount,quint64 deleteCount);
|
||||
void updateFiles(QList<FileData> fileSendList, QList<FileData> deleteList);
|
||||
bool socketFlush();
|
||||
|
||||
bool getIsSendStopped() const;
|
||||
|
||||
@@ -49,9 +48,9 @@ public slots:
|
||||
|
||||
signals:
|
||||
void sigLoadHash();
|
||||
QByteArray sigSendXMLmessage(QString loginFrom, QString loginTo, QString text, QString userType);
|
||||
//QByteArray sigSendXMLmessage(QString loginFrom, QString loginTo, QString text, QString userType); //сигнал не используется
|
||||
QByteArray sigSendNotify(QString message);
|
||||
QByteArray sigSendVersion();
|
||||
//QByteArray sigSendVersion(); //сигнал не используется
|
||||
|
||||
private:
|
||||
Client *client;
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#include <QThread>
|
||||
#include "updatecontroller.h"
|
||||
|
||||
|
||||
@@ -5,16 +6,19 @@ UpdateController::UpdateController(QObject *parent) :
|
||||
QObject(parent),
|
||||
commonClientHandler(nullptr)
|
||||
{
|
||||
qDebug() << "UpdateController init thread ID " << QThread::currentThreadId();
|
||||
|
||||
buildPath = QDir::currentPath() + "/" + applicationFolderName;
|
||||
sharedDataPath = QDir::currentPath() + "/" + sharedDataFolderName;
|
||||
Logger::instance().log(buildPath);
|
||||
qDebug() << hashFileName;
|
||||
}
|
||||
|
||||
void UpdateController::initialize(CommonClientHandler *commonClientHandler,DataParser *dataParser,AssetsManager *assetManager)
|
||||
void UpdateController::initialize(CommonClientHandler *commonClientHandler,AssetsManager *assetManager)
|
||||
{
|
||||
qDebug() << "UpdateController::initialize thread ID " << QThread::currentThreadId();
|
||||
|
||||
this->commonClientHandler = commonClientHandler;
|
||||
this->dataParser = dataParser;
|
||||
this->assetManager = assetManager;
|
||||
hashCalculator = new FastHashCalculator;
|
||||
|
||||
@@ -24,7 +28,7 @@ void UpdateController::initialize(CommonClientHandler *commonClientHandler,DataP
|
||||
}
|
||||
|
||||
sizeToSend = 0;
|
||||
assetManager->initialize(this,dataParser);
|
||||
assetManager->initialize(this);
|
||||
|
||||
if (!checkRequiredFolder())
|
||||
{
|
||||
@@ -37,19 +41,20 @@ void UpdateController::initialize(CommonClientHandler *commonClientHandler,DataP
|
||||
setUpCurrentServerHash();
|
||||
|
||||
mutex = new QMutex;
|
||||
qDebug() << "UpdateController init thread ID " << QThread::currentThreadId();
|
||||
|
||||
emit sigInitializeFinished();
|
||||
}
|
||||
|
||||
void UpdateController::changeAssetVersion(QString versionName)
|
||||
{
|
||||
qDebug() << "UpdateController::changeAssetVersion thread ID " << QThread::currentThreadId();
|
||||
|
||||
//commonClientHandler->slot_sendPacketToAllClients(PacketType::BUSY);
|
||||
bool res = emit signal_BlockAutorization(true, "SERVER", "ChangeAssetVersion");
|
||||
qDebug() << "UpdateController thread ID " << QThread::currentThreadId();
|
||||
|
||||
currentStreamingPath = assetManager->setVersion(versionName);
|
||||
setUpCurrentServerHash();
|
||||
emit sigUpdateDocs();
|
||||
emit sigUpdateDocsXML();
|
||||
commonClientHandler->slot_sendPacketToAllClients(PacketType::HASH_READY, false);
|
||||
commonClientHandler->sendCurrentVersionToAllClient();
|
||||
|
||||
|
||||
@@ -10,14 +10,14 @@
|
||||
#include <QMutex>
|
||||
#include <QApplication>
|
||||
#include <QMessageBox>
|
||||
#include <Systems/Parsers/dataparser.h>
|
||||
#include <Data/typesDataServerClient.h>
|
||||
#include <Data/StreamingVersionData.h>
|
||||
#include "fasthashcalculator.h"
|
||||
#include "assetsmanager.h"
|
||||
#include "commonclienthandler.h"
|
||||
|
||||
class TCPServer;
|
||||
class SendSystem;
|
||||
class DataParser;
|
||||
class ClientHandler;
|
||||
class AssetsManager;
|
||||
class ServerLMSWidget;
|
||||
@@ -30,7 +30,7 @@ class UpdateController : public QObject
|
||||
public:
|
||||
|
||||
explicit UpdateController(QObject *parent = 0);
|
||||
void initialize(CommonClientHandler* commonClientHandler,DataParser *dataParser,AssetsManager *assetManager);
|
||||
void initialize(CommonClientHandler* commonClientHandler,AssetsManager *assetManager);
|
||||
void compareFiles(ClientHandler* handler, QByteArray array);
|
||||
void showHash();
|
||||
void calculateFullHash();
|
||||
@@ -67,7 +67,7 @@ public slots:
|
||||
|
||||
signals:
|
||||
void sigErrorRequired(int code);
|
||||
void sigUpdateDocs();
|
||||
void sigUpdateDocsXML();
|
||||
|
||||
void sigInitializeFinished();
|
||||
|
||||
@@ -85,7 +85,6 @@ private:
|
||||
QString sharedDataPath;
|
||||
CommonClientHandler *commonClientHandler;
|
||||
FastHashCalculator *hashCalculator;
|
||||
DataParser *dataParser;
|
||||
AssetsManager *assetManager;
|
||||
quint64 sizeToSend;
|
||||
QMutex *mutex;
|
||||
|
||||
Reference in New Issue
Block a user