From c20c744506f5b5ec2dbdcdf72b7dfd1e65d25f9d Mon Sep 17 00:00:00 2001
From: "littletux89@gmail.com" <littletux89@gmail.com>
Date: Mon, 20 May 2019 21:08:30 +0300
Subject: [PATCH] [*] Added virtual method for parsing log node file.

---
 KelvinDashboardService/DapLogReader.cpp | 21 +++++++++++++++++----
 KelvinDashboardService/DapLogReader.h   |  5 +++--
 KelvinDashboardService/main.cpp         |  2 --
 3 files changed, 20 insertions(+), 8 deletions(-)

diff --git a/KelvinDashboardService/DapLogReader.cpp b/KelvinDashboardService/DapLogReader.cpp
index 83a97f46f..fb2fc13b1 100644
--- a/KelvinDashboardService/DapLogReader.cpp
+++ b/KelvinDashboardService/DapLogReader.cpp
@@ -1,13 +1,27 @@
 #include "DapLogReader.h"
 
+
+
 DapLogReader::DapLogReader(QObject *parent) : QObject(parent)
 {
 
 }
 
-QList<QString> DapLogReader::request(int aiTimeStamp, int aiRowCount)
+QStringList DapLogReader::parse(const QByteArray &aLogMessages)
+{
+    auto list = QString::fromLatin1(aLogMessages).split(";");
+
+    for(QString l : list)
+    {
+        if(l.contains("["))
+            qDebug() << l;
+    }
+
+    return list;
+}
+
+QStringList DapLogReader::request(int aiTimeStamp, int aiRowCount)
 {
-    QList<QString> str;
     QByteArray result;
     QProcess process;
     process.start(QString("%1 print_log ts_after %2 limit %3").arg("/home/andrey/Demlabs/build-kelvin-node/kelvin-node-cli").arg(aiTimeStamp).arg(aiRowCount));
@@ -19,7 +33,6 @@ QList<QString> DapLogReader::request(int aiTimeStamp, int aiRowCount)
     else
     {
         qDebug() << "TRUE";
-        qDebug() << QString::fromLatin1(result);
     }
-    return str;
+    return parse(result);
 }
diff --git a/KelvinDashboardService/DapLogReader.h b/KelvinDashboardService/DapLogReader.h
index 6362047b8..47dc5079a 100644
--- a/KelvinDashboardService/DapLogReader.h
+++ b/KelvinDashboardService/DapLogReader.h
@@ -9,7 +9,8 @@
 class DapLogReader : public QObject
 {
     Q_OBJECT
-
+protected:
+    virtual QStringList parse(const QByteArray& aLogMessages);
 public:
     explicit DapLogReader(QObject *parent = nullptr);
 
@@ -17,7 +18,7 @@ signals:
 
 public slots:
 
-    QList<QString> request(int aiTimeStamp, int aiRowCount);
+    QStringList request(int aiTimeStamp, int aiRowCount);
 };
 
 #endif // DAPLOGREADER_H
diff --git a/KelvinDashboardService/main.cpp b/KelvinDashboardService/main.cpp
index f83eef8b7..5b0872a23 100755
--- a/KelvinDashboardService/main.cpp
+++ b/KelvinDashboardService/main.cpp
@@ -37,8 +37,6 @@ int main(int argc, char *argv[])
 //#endif
         DapLogReader dapLogReader;
         auto var = dapLogReader.request(0, 100);
-        auto var1 = dapLogReader.request(1, 100);
-        auto var2 = dapLogReader.request(2, 100);
     // Creating the main application object
     DapChainDashboardService service;
     service.start();
-- 
GitLab