summaryrefslogtreecommitdiffstats
path: root/src/b2qt-update-application/filewrapper.cpp
diff options
context:
space:
mode:
authorRainer Keller <rainer.keller@digia.com>2014-09-04 10:38:02 +0200
committerRainer Keller <rainer.keller@digia.com>2014-09-04 15:09:20 +0300
commitfa2d78c6088be96e755d97b1a72343753abec8d1 (patch)
tree589a1c1a06db570a17235a7699dffc4012241c2f /src/b2qt-update-application/filewrapper.cpp
parent3a4fb56b69957ada6e59a669ea38df948794dbd0 (diff)
Add tools related for update
b2qt-update-application is for doing the actual update. b2qt-update-util is for initiating and finishing the update. Change-Id: Ide1c1ba307d9346bacf83c507816feecefe87a16 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@digia.com>
Diffstat (limited to 'src/b2qt-update-application/filewrapper.cpp')
-rw-r--r--src/b2qt-update-application/filewrapper.cpp53
1 files changed, 53 insertions, 0 deletions
diff --git a/src/b2qt-update-application/filewrapper.cpp b/src/b2qt-update-application/filewrapper.cpp
new file mode 100644
index 0000000..6b4a759
--- /dev/null
+++ b/src/b2qt-update-application/filewrapper.cpp
@@ -0,0 +1,53 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Digia Plc
+** All rights reserved.
+** For any questions to Digia, please use the contact form at
+** http://qt.digia.com/
+**
+** This file is part of Qt Enterprise Embedded.
+**
+** Licensees holding valid Qt Enterprise licenses may use this file in
+** accordance with the Qt Enterprise License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia.
+**
+** If you have questions regarding the use of this file, please use
+** the contact form at http://qt.digia.com/
+**
+****************************************************************************/
+
+#include "filewrapper.h"
+#include <QDebug>
+#include <QTimer>
+
+FileWrapper::FileWrapper(const QString &fileName, QObject *parent)
+ : QFile(fileName, parent)
+ , mTimer(new QTimer(this))
+{
+ mTimer->setInterval(50);
+ connect(mTimer, &QTimer::timeout, this, &FileWrapper::emitReadyRead);
+}
+
+FileWrapper::~FileWrapper()
+{
+}
+
+bool FileWrapper::open(OpenMode mode)
+{
+ bool rc = QFile::open(mode);
+ if (rc) {
+ mTimer->start();
+ }
+ return rc;
+}
+
+void FileWrapper::emitReadyRead()
+{
+ if (!atEnd()) {
+ emit readyRead();
+ } else {
+ mTimer->stop();
+ close();
+ }
+}