From bfc9e1e5d598f354dd39e5c2eb51d5e51585359b Mon Sep 17 00:00:00 2001 From: Andrew Date: Thu, 28 Nov 2013 20:45:52 -0600 Subject: Verify access tokens before launching Minecraft Kind of an important thing to do... Heh... --- logic/tasks/Task.cpp | 15 +++++++++++++++ logic/tasks/Task.h | 14 ++++++++++++++ 2 files changed, 29 insertions(+) (limited to 'logic/tasks') diff --git a/logic/tasks/Task.cpp b/logic/tasks/Task.cpp index 47214723..cb7a5443 100644 --- a/logic/tasks/Task.cpp +++ b/logic/tasks/Task.cpp @@ -53,6 +53,8 @@ void Task::start() void Task::emitFailed(QString reason) { m_running = false; + m_succeeded = false; + m_failReason = reason; QLOG_ERROR() << "Task failed: " << reason; emit failed(reason); } @@ -60,6 +62,8 @@ void Task::emitFailed(QString reason) void Task::emitSucceeded() { m_running = false; + m_succeeded = true; + QLOG_INFO() << "Task succeeded"; emit succeeded(); } @@ -67,3 +71,14 @@ bool Task::isRunning() const { return m_running; } + +bool Task::successful() const +{ + return m_succeeded; +} + +QString Task::failReason() const +{ + return m_failReason; +} + diff --git a/logic/tasks/Task.h b/logic/tasks/Task.h index 980b2af8..d08ef560 100644 --- a/logic/tasks/Task.h +++ b/logic/tasks/Task.h @@ -29,6 +29,18 @@ public: virtual void getProgress(qint64 ¤t, qint64 &total); virtual bool isRunning() const; + /*! + * True if this task was successful. + * If the task failed or is still running, returns false. + */ + virtual bool successful() const; + + /*! + * Returns the string that was passed to emitFailed as the error message when the task failed. + * If the task hasn't failed, returns an empty string. + */ + virtual QString failReason() const; + public slots: virtual void start(); @@ -48,4 +60,6 @@ protected: QString m_status; int m_progress = 0; bool m_running = false; + bool m_succeeded = false; + QString m_failReason = ""; }; -- cgit v1.2.3