mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-28 19:55:48 +03:00
Merge branch 'bugfix-version-info' into merge-task-and-verController
This commit is contained in:
@@ -59,6 +59,10 @@ void ProcessParser::read(ClientHandler *client, QByteArray array)
|
||||
|
||||
clientNotify(xmlReader,client);
|
||||
}
|
||||
else if(xmlReader.name() == "DataInfo")
|
||||
{
|
||||
clientDataInfo(xmlReader,client);
|
||||
}
|
||||
else
|
||||
{
|
||||
emit sigLogMessage("XmlParser: unrecognized tag");
|
||||
@@ -69,6 +73,25 @@ void ProcessParser::read(ClientHandler *client, QByteArray array)
|
||||
}//while(!xmlReader.atEnd())
|
||||
}
|
||||
|
||||
void ProcessParser::clientDataInfo(QXmlStreamReader &xmlReader,ClientHandler *client)
|
||||
{
|
||||
DataInfo *dataInfo = new DataInfo;
|
||||
|
||||
foreach(const QXmlStreamAttribute &attr, xmlReader.attributes())
|
||||
{
|
||||
QString name = attr.name().toString();
|
||||
QString value = attr.value().toString();
|
||||
|
||||
if(name == "path")
|
||||
dataInfo->path= value.toUtf8();
|
||||
|
||||
if(name == "size")
|
||||
dataInfo->size = value.toLong();
|
||||
}
|
||||
|
||||
processingSystem->setCurrentDataInfo(dataInfo);
|
||||
|
||||
}
|
||||
void ProcessParser::clientAuth(QXmlStreamReader &xmlReader,ClientHandler *client)
|
||||
{
|
||||
ClientAutorization clientAutorization;
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
#define PROCESSPARSER_H
|
||||
|
||||
#include <QObject>
|
||||
#include <Data/typesDataServerClient.h>
|
||||
#include <qxmlstream.h>
|
||||
#include <clienthandler.h>
|
||||
#include "Data/typesDataServerClient.h"
|
||||
|
||||
class ProcessParser : public QObject
|
||||
{
|
||||
@@ -26,6 +26,7 @@ private:
|
||||
void queryTasksXML(QXmlStreamReader &xmlReader,ClientHandler *client);
|
||||
void clientMessage(QXmlStreamReader &xmlReader,ClientHandler *client);
|
||||
void clientNotify(QXmlStreamReader &xmlReader,ClientHandler *client);
|
||||
void clientDataInfo(QXmlStreamReader &xmlReader, ClientHandler *client);
|
||||
};
|
||||
|
||||
#endif // PROCESSPARSER_H
|
||||
|
||||
@@ -170,22 +170,13 @@ void AssetsManager::addVersion(StreamingVersionData *data)
|
||||
void AssetsManager::createCopyVersion(QString versionName,QString newVersionName,QString author)
|
||||
{
|
||||
qDebug() << "assetManager thread ID " << QThread::currentThreadId();
|
||||
QListIterator<StreamingVersionData*> iterator(*datas);
|
||||
StreamingVersionData* data = new StreamingVersionData;
|
||||
|
||||
while (iterator.hasNext())
|
||||
{
|
||||
StreamingVersionData *version = iterator.next();
|
||||
|
||||
if (version->getViewName() == versionName)
|
||||
{
|
||||
data->setAbsolutePath(version->getAbsolutPath());
|
||||
}
|
||||
}
|
||||
|
||||
data->setAbsolutePath(Tools::createSharedPath("/" + newVersionName));
|
||||
data->setAuthor(author);
|
||||
data->setIsChangeable(true);
|
||||
data->setViewName(newVersionName);
|
||||
data->setCreateData(QDateTime::currentDateTime());
|
||||
datas->append(data);
|
||||
|
||||
qDebug() << "Version for copy " << versionName;
|
||||
@@ -282,7 +273,7 @@ void AssetsManager::copyAllRecurse(QString source,QString destination)
|
||||
void AssetsManager::writeVersionsToFile(QList<StreamingVersionData*> version,bool isFirst)
|
||||
{
|
||||
QList<SXmlAnswerTag> listTag;
|
||||
|
||||
datas->clear();
|
||||
QFile file(versionListFile);
|
||||
|
||||
foreach(StreamingVersionData* ver,version)
|
||||
@@ -295,7 +286,9 @@ void AssetsManager::writeVersionsToFile(QList<StreamingVersionData*> version,boo
|
||||
if(isFirst)
|
||||
{
|
||||
attribute3 = {"isChangeable",QString::number(false)};
|
||||
attribute4 = {"author",tr("Константа-дизайн")};
|
||||
QString author = tr("Константа-дизайн");
|
||||
attribute4 = {"author",author};
|
||||
ver->setAuthor(author);
|
||||
}else
|
||||
{
|
||||
attribute3 ={"isChangeable",QString::number(ver->getIsChangeable())};
|
||||
@@ -337,10 +330,10 @@ void AssetsManager::writeVersionsToFile(QList<StreamingVersionData*> version,boo
|
||||
void AssetsManager::createFirstVersionListXML(QList<StreamingVersionData*> version) //TODO: переименовать и перебросить в AssetManager
|
||||
{
|
||||
QFile file(versionListFile);
|
||||
|
||||
QList<StreamingVersionData*> *temp = new QList<StreamingVersionData*>();
|
||||
if(!file.exists())
|
||||
{
|
||||
writeVersionsToFile(version,true);
|
||||
writeVersionsToFile(version,true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -353,16 +346,20 @@ void AssetsManager::createFirstVersionListXML(QList<StreamingVersionData*> versi
|
||||
{
|
||||
if(ver->getViewName() == data->getViewName())
|
||||
{
|
||||
data->setAbsolutePath(ver->getAbsolutPath());
|
||||
StreamingVersionData *tempData = new StreamingVersionData;
|
||||
|
||||
tempData->fill(data);
|
||||
tempData->setAbsolutePath(ver->getAbsolutPath());
|
||||
temp->append(tempData);
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
writeVersionsToFile(*datas,false);
|
||||
writeVersionsToFile(*temp,false);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
void AssetsManager::saveVersionToFile(StreamingVersionData *streamingVersion) //TODO: переименовать и перебросить в AssetManager
|
||||
|
||||
@@ -24,6 +24,7 @@ void ProcessingSystem::initialize(ServerLMSWidget *server,
|
||||
|
||||
connect(this,&ProcessingSystem::sigAuthChanged,commonClientHandler, &CommonClientHandler::slot_AuthChanged,Qt::AutoConnection);
|
||||
connect(this,&ProcessingSystem::sigUpdateListClients,server, &ServerLMSWidget::slotUpdateListClients,Qt::AutoConnection);
|
||||
connect(this,&ProcessingSystem::sigSetData,updateController,&UpdateController::setDataInfo,Qt::AutoConnection);
|
||||
connect(this,&ProcessingSystem::signal_msgToClientReady,commonClientHandler, &CommonClientHandler::slot_msgToClientFromGUI);
|
||||
connect(this,&ProcessingSystem::signal_msgFromClientReady,commonClientHandler, &CommonClientHandler::slot_msgToGUIfromClient);
|
||||
connect(this,&ProcessingSystem::sigLogMessage,logger,&Logger::addTextToLogger,Qt::QueuedConnection);
|
||||
@@ -335,5 +336,10 @@ void ProcessingSystem::processingClientNotify(ClientHandler *client, ClientNotif
|
||||
}
|
||||
}
|
||||
|
||||
void ProcessingSystem::setCurrentDataInfo(DataInfo *dataInfo)
|
||||
{
|
||||
emit sigSetData(dataInfo);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -38,6 +38,7 @@ public:
|
||||
void processingFromClientMessage(ClientHandler *client, ClientMessage clientMessage);
|
||||
void processingClientNotify(ClientHandler *client, ClientNotify clientNotify);
|
||||
|
||||
void setCurrentDataInfo(DataInfo *dataInfo);
|
||||
signals:
|
||||
void sigUpdateListClients();
|
||||
void sigAuthChanged();
|
||||
@@ -45,6 +46,7 @@ signals:
|
||||
void sigAddToMessanger(QString login,QString text);
|
||||
void signal_msgToClientReady(QString login, QString text);
|
||||
void signal_msgFromClientReady(QString login, QString text);
|
||||
void sigSetData(DataInfo *dataInfo);
|
||||
|
||||
private:
|
||||
CommonClientHandler *commonClientServer;
|
||||
|
||||
@@ -66,6 +66,11 @@ QString Tools::createStreamingToRealPath(QString path,StreamingVersionData* stre
|
||||
|
||||
}
|
||||
|
||||
QString Tools::createVersionHashFilepath(QString fileName)
|
||||
{
|
||||
return staticDataFolderName + "/" + fileName + "Hash.xml";
|
||||
}
|
||||
|
||||
QString Tools::createUpdateFilePath(QString path)
|
||||
{
|
||||
//qDebug() << "Full path: " << path;
|
||||
|
||||
@@ -56,6 +56,7 @@ public:
|
||||
static QString createSharedPath(QString path);
|
||||
static QString createRealPath(QString path,StreamingVersionData* currentVersionData);
|
||||
static QString createStreamingToRealPath(QString path, StreamingVersionData *streamingVersionData);
|
||||
static QString createVersionHashFilepath(QString fileName);
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -193,6 +193,11 @@ void UpdateController::setUpCurrentServerHash()
|
||||
saveHash(hashFileName,fileList);
|
||||
}
|
||||
|
||||
void UpdateController::setDataInfo(DataInfo *value)
|
||||
{
|
||||
dataInfo = value;
|
||||
}
|
||||
|
||||
QString UpdateController::getCurrentStreamingPath() const
|
||||
{
|
||||
return currentStreamingPath;
|
||||
@@ -428,7 +433,7 @@ void UpdateController::calculateSharedHash()
|
||||
if (fileInfo.fileName() == "." || fileInfo.fileName() == "..")
|
||||
continue;
|
||||
|
||||
QString fileName = staticDataFolderName + "/" + fileInfo.fileName() + "Hash.xml";
|
||||
QString fileName = Tools::createVersionHashFilepath(fileInfo.fileName());
|
||||
|
||||
fileList = calculateHash(fileInfo.absoluteFilePath());
|
||||
saveHash(fileName,fileList);
|
||||
|
||||
@@ -56,6 +56,8 @@ public:
|
||||
QString getPathAdditionalFile(QString name);
|
||||
|
||||
StreamingVersionData *getCurrentVersion();
|
||||
void setDataInfo(DataInfo *value);
|
||||
|
||||
public slots:
|
||||
void changeAssetVersion(QString versionName);
|
||||
void createCopyVersion(QString versionName,QString newVersionName,QString author);
|
||||
|
||||
Reference in New Issue
Block a user