[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [messagelib] webengineviewer/src/checkphishingurl: Continue to implement thread support
From:       Montel Laurent <null () kde ! org>
Date:       2016-12-29 7:39:20
Message-ID: E1cMVJ2-0005KD-Mr () code ! kde ! org
[Download RAW message or body]

Git commit 08df3f87f23d3133126fb408de4ad2e1b6a6b12a by Montel Laurent.
Committed on 29/12/2016 at 07:39.
Pushed by mlaurent into branch 'master'.

Continue to implement thread support

M  +45   -8    webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.cpp
M  +2    -5    webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.h

https://commits.kde.org/messagelib/08df3f87f23d3133126fb408de4ad2e1b6a6b12a

diff --git a/webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.cpp \
b/webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.cpp index \
                99709c5f..346eacef 100644
--- a/webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.cpp
+++ b/webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.cpp
@@ -24,7 +24,8 @@
 using namespace WebEngineViewer;
 
 DownloadLocalDatabaseThread::DownloadLocalDatabaseThread(QObject *parent)
-    : QThread(parent)
+    : QThread(parent),
+      mDataBaseOk(false)
 {
 
 }
@@ -36,7 +37,7 @@ DownloadLocalDatabaseThread::~DownloadLocalDatabaseThread()
 
 void DownloadLocalDatabaseThread::setDataBaseState(const QString &value)
 {
-    mDataBaseState = value;
+    mCurrentDataBaseState = value;
 }
 
 void DownloadLocalDatabaseThread::run()
@@ -45,8 +46,8 @@ void DownloadLocalDatabaseThread::run()
         qCWarning(WEBENGINEVIEWER_LOG) << "Database full path is empty";
     }
     WebEngineViewer::CreatePhishingUrlDataBaseJob *job = new \
                WebEngineViewer::CreatePhishingUrlDataBaseJob(this);
-    job->setDataBaseDownloadNeeded(mDataBaseState.isEmpty() ? \
WebEngineViewer::CreatePhishingUrlDataBaseJob::FullDataBase : \
                WebEngineViewer::CreatePhishingUrlDataBaseJob::UpdateDataBase);
-    job->setDataBaseState(mDataBaseState);
+    job->setDataBaseDownloadNeeded(mCurrentDataBaseState.isEmpty() ? \
WebEngineViewer::CreatePhishingUrlDataBaseJob::FullDataBase : \
WebEngineViewer::CreatePhishingUrlDataBaseJob::UpdateDataBase); +    \
                job->setDataBaseState(mCurrentDataBaseState);
     connect(job, &CreatePhishingUrlDataBaseJob::finished, this, \
&DownloadLocalDatabaseThread::slotDownloadDataBaseFinished);  job->start();
 }
@@ -54,8 +55,44 @@ void DownloadLocalDatabaseThread::run()
 void DownloadLocalDatabaseThread::slotDownloadDataBaseFinished(const \
                WebEngineViewer::UpdateDataBaseInfo &infoDataBase,
         WebEngineViewer::CreatePhishingUrlDataBaseJob::DataBaseDownloadResult \
status)  {
-    Q_EMIT downloadDataBaseFinished(infoDataBase, status);
-    deleteLater();
+    //TODO install database
+#if 0
+    switch (status) {
+    case CreatePhishingUrlDataBaseJob::InvalidData:
+        qCWarning(WEBENGINEVIEWER_LOG) << "Invalid Data.";
+        mDataBaseOk = false;
+        break;
+    case CreatePhishingUrlDataBaseJob::ValidData:
+        qCWarning(WEBENGINEVIEWER_LOG) << "Valid Data.";
+        mDataBaseOk= true;
+        break;
+    case CreatePhishingUrlDataBaseJob::UnknownError:
+        qCWarning(WEBENGINEVIEWER_LOG) << "Unknown data.";
+        mDataBaseOk = false;
+        break;
+    case CreatePhishingUrlDataBaseJob::BrokenNetwork:
+        qCWarning(WEBENGINEVIEWER_LOG) << "Broken Networks.";
+        mDataBaseOk = false;
+        break;
+    }
+    if (mDataBaseOk) {
+        if (mCurrentDataBaseState == infoDataBase.newClientState) {
+            qCDebug(WEBENGINEVIEWER_LOG) << "No update necessary ";
+        } else {
+            switch (infoDataBase.responseType) {
+            case WebEngineViewer::UpdateDataBaseInfo::FullUpdate:
+            case WebEngineViewer::UpdateDataBaseInfo::PartialUpdate:
+                installNewDataBase(infoDataBase);
+                break;
+            case WebEngineViewer::UpdateDataBaseInfo::Unknown:
+                break;
+            }
+        }
+    }
+    qCDebug(WEBENGINEVIEWER_LOG) << "Download done";
+
+#endif
+    //Q_EMIT downloadDataBaseFinished(infoDataBase, status);
 }
 
 void DownloadLocalDatabaseThread::setDatabaseFullPath(const QString \
&databaseFullPath) @@ -65,16 +102,16 @@ void \
DownloadLocalDatabaseThread::setDatabaseFullPath(const QString &databaseFul  
 void DownloadLocalDatabaseThread::installNewDataBase(const \
WebEngineViewer::UpdateDataBaseInfo &infoDataBase)  {
-#if 0
     WebEngineViewer::CreateDatabaseFileJob *job = new \
WebEngineViewer::CreateDatabaseFileJob(this);  job->setFileName(mDatabaseFullPath);
     job->setUpdateDataBaseInfo(infoDataBase);
     connect(job, &CreateDatabaseFileJob::finished, this, \
&DownloadLocalDatabaseThread::slotCreateDataBaseFileNameFinished);  job->start();
-#endif
 }
 
 void DownloadLocalDatabaseThread::slotCreateDataBaseFileNameFinished(bool success, \
const QString &newClientState, const QString &minimumWaitDurationStr)  {
     //TODO q_emit
+
+    deleteLater();
 }
diff --git a/webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.h \
b/webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.h index \
                7cd47783..b122f8b5 100644
--- a/webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.h
+++ b/webengineviewer/src/checkphishingurl/downloadlocaldatabasethread.h
@@ -36,10 +36,6 @@ public:
 
     void setDatabaseFullPath(const QString &databaseFullPath);
 
-Q_SIGNALS:
-    void downloadDataBaseFinished(const WebEngineViewer::UpdateDataBaseInfo \
                &infoDataBase,
-                                  \
                WebEngineViewer::CreatePhishingUrlDataBaseJob::DataBaseDownloadResult \
                status);
-
 protected:
     void run() Q_DECL_OVERRIDE;
 
@@ -48,8 +44,9 @@ private:
     void slotDownloadDataBaseFinished(const WebEngineViewer::UpdateDataBaseInfo \
                &infoDataBase,
                                       \
                WebEngineViewer::CreatePhishingUrlDataBaseJob::DataBaseDownloadResult \
                status);
     void slotCreateDataBaseFileNameFinished(bool success, const QString \
                &newClientState, const QString &minimumWaitDurationStr);
-    QString mDataBaseState;
+    QString mCurrentDataBaseState;
     QString mDatabaseFullPath;
+    bool mDataBaseOk;
 };
 }
 #endif // DOWNLOADLOCALDATABASETHREAD_H


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic