Files
RRJClient/Core/UpdateController.h
2025-01-20 10:59:13 +03:00

59 lines
1.3 KiB
C++

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