Files
RRJClient/Core/UpdateController.h
2025-08-13 10:22:14 +03:00

56 lines
1.3 KiB
C++

#ifndef UPDATECONTROLLER_H
#define UPDATECONTROLLER_H
#include "Core/sendsystem.h"
#include "Core/versioncontainer.h"
#include <QXmlStreamWriter>
#include <QXmlStreamReader>
#include <QXmlStreamAttribute>
#include <QCryptographicHash>
#include <QDirIterator>
#include <QFile>
#include <QTextStream>
#include <QDateTime>
#include <QDebug>
#include <QList>
#include <QObject>
#include <QDialogButtonBox>
#include <Data\FileData.h>
#include <Data\streamingversiondata.h>
#include <Core\dataparseroutput.h>
class UpdateController : public QObject
{
Q_OBJECT
public:
explicit UpdateController(DataParserOutput *dataParser, SendSystem *sendSystem,
QObject *parent = 0);
void initialize(VersionContainer *versionContainer);
void calculateCommonHash();
void calculateStreamingHash();
~UpdateController();
void updateFilesOnServer(QList<FileData> *fileSendList);
void checkCanUpdate();
signals:
void sigUpdateComplete(bool flag);
private:
SendSystem *sendSystem;
DataParserOutput * dataParserOut;
QString applicationFolderPath;
VersionContainer *versionContainer;
QList<FileData> appDataList;
QList<FileData> streamingDataList;
QList<FileData> calculateHash(const QString& path,const QString& ignoreName);
};
#endif // UPDATECONTROLLER_H