feat: paliminary updater

- can check for need to update
- can select a version to update to
- perform update: TODO

Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
This commit is contained in:
Rachel Powers
2023-05-30 23:03:44 -07:00
parent 954d4d701a
commit 1c91d2f242
13 changed files with 1122 additions and 3 deletions

View File

@ -111,6 +111,7 @@ FileLinkApp::FileLinkApp(int& argc, char** argv) : QCoreApplication(argc, argv),
joinServer(serverToJoin);
} else {
qDebug() << "no server to join";
m_status = Failed;
exit();
}
}
@ -126,6 +127,7 @@ void FileLinkApp::joinServer(QString server)
connect(&socket, &QLocalSocket::readyRead, this, &FileLinkApp::readPathPairs);
connect(&socket, &QLocalSocket::errorOccurred, this, [&](QLocalSocket::LocalSocketError socketError) {
m_status = Failed;
switch (socketError) {
case QLocalSocket::ServerNotFoundError:
qDebug()
@ -150,6 +152,7 @@ void FileLinkApp::joinServer(QString server)
connect(&socket, &QLocalSocket::disconnected, this, [&]() {
qDebug() << "disconnected from server, should exit";
m_status = Succeeded;
exit();
});

View File

@ -41,8 +41,17 @@ class FileLinkApp : public QCoreApplication {
// friends for the purpose of limiting access to deprecated stuff
Q_OBJECT
public:
enum Status {
Starting,
Failed,
Succeeded,
Initialized
};
FileLinkApp(int& argc, char** argv);
virtual ~FileLinkApp();
Status status() const {
return m_status;
}
private:
void joinServer(QString server);
@ -50,6 +59,8 @@ class FileLinkApp : public QCoreApplication {
void runLink();
void sendResults();
Status m_status = Status::Starting;
bool m_useHardLinks = false;
QDateTime m_startTime;

View File

@ -26,5 +26,17 @@ int main(int argc, char* argv[])
{
FileLinkApp ldh(argc, argv);
return ldh.exec();
switch(ldh.status()) {
case FileLinkApp::Starting:
case FileLinkApp::Initialized:
{
return ldh.exec();
}
case FileLinkApp::Failed:
return 1;
case FileLinkApp::Succeeded:
return 0;
default:
return -1;
}
}