ref: refactoring treads, check local update instructor

This commit is contained in:
semenov
2024-12-17 17:22:33 +03:00
parent 7aeb9d8000
commit f7ca02444c
53 changed files with 2292 additions and 1558 deletions

View File

@@ -13,6 +13,11 @@ DataParser::DataParser(QObject *parent) :
}
}
void DataParser::initialize(RecognizeSystem *recognizeSystem)
{
this->recognizeSystem = recognizeSystem;
}
void DataParser::createFileDataList(QList<FileData> fileDataList,QString filename)
{
@@ -62,8 +67,6 @@ void DataParser::createAuthMessage(ClientAutorization *auth)
file.close();
}
void DataParser::createServerSettings(ServerSettings* serverSettings)
{
QFile file(settingsName);
@@ -164,7 +167,7 @@ void DataParser::addRunData(QList<int> displays)
ServerSettings *DataParser::getServerSettings()
{
ServerSettings *settings = new ServerSettings;
QFile file(settingsName);
QFile file(QDir::currentPath() + settingsName);
file.open(QIODevice::ReadOnly);
QXmlStreamReader xmlReader(&file);
@@ -326,6 +329,101 @@ QByteArray DataParser::xmlAnswer(QList<SXmlAnswerTag> listTag, QString elemUp1,
return array;
}
void DataParser::xmlParser(QByteArray array)
{
QXmlStreamReader xmlReader(array);
xmlReader.readNext();
while(!xmlReader.atEnd())
{
if(!xmlReader.isStartElement()) {
xmlReader.readNext();
continue;
}
if(xmlReader.name() == "ServerNotify")
{
foreach(const QXmlStreamAttribute &attr, xmlReader.attributes())
{
QString name = attr.name().toString();
QString value = attr.value().toString();
if(name == "Code")
{
if (value == "END")
{
emit recognizeSystem->sigSocketDisabled();
}
if(value == "BLOCKED")
{
emit recognizeSystem->sigServerBlocked();
}
if(value == "HASHSENDCOMPLETE")
{
emit recognizeSystem->sigStartCompare();
}
}
}
}
if(xmlReader.name() == "ServerAuthorization"){
ServerAuthorization *serverAuth = new ServerAuthorization;
foreach(const QXmlStreamAttribute &attr, xmlReader.attributes())
{
QString name = attr.name().toString();
QString value = attr.value().toString();
if (name == "Result"){
serverAuth->Result = value == "true" ? true : false;
}
if (name == "InstructorName"){
serverAuth->InstructorName = value;
}
if (name == "ClientName"){
serverAuth->ClientName = value;
}
if (name == "AccessType"){
serverAuth->AccessType = value;
recognizeSystem->checkAccessType(value);
}
}
emit recognizeSystem->sigSaveLoginData(serverAuth);
}
if(xmlReader.name() == "VersionData")
{
StreamingVersionData *serverVersion = new StreamingVersionData;
foreach(const QXmlStreamAttribute &attr,xmlReader.attributes())
{
QString name = attr.name().toString();
QString value = attr.value().toString();
if(name == "Version")
{
serverVersion->setName(value);
}
if(name == "Created")
{
serverVersion->setCreateData(QDateTime::fromString(value));
}
}
recognizeSystem->setServerVersion(serverVersion);
}
xmlReader.readNext();
}
}
DataParser::~DataParser()
{