From 87e40a8467e529dd2a9a23363cbe1d971063e3f2 Mon Sep 17 00:00:00 2001 From: Kris Moore Date: Thu, 3 Mar 2016 16:05:18 -0500 Subject: [PATCH] Rename DispatcherParsing.h -> DispatcherParsing.cpp Add first parsing function for iohyve fetch, will continue with it tomorrow --- src/server/Dispatcher.cpp | 2 -- src/server/Dispatcher.h | 5 +++++ ...patcherParsing.h => DispatcherParsing.cpp} | 21 +++++++++++-------- src/server/server.pro | 6 +++--- 4 files changed, 20 insertions(+), 14 deletions(-) rename src/server/{DispatcherParsing.h => DispatcherParsing.cpp} (75%) diff --git a/src/server/Dispatcher.cpp b/src/server/Dispatcher.cpp index 47bd466..1804c22 100644 --- a/src/server/Dispatcher.cpp +++ b/src/server/Dispatcher.cpp @@ -5,8 +5,6 @@ // ================================= #include "Dispatcher.h" -#include "DispatcherParsing.h" - #include "globals.h" diff --git a/src/server/Dispatcher.h b/src/server/Dispatcher.h index b857da4..e6a5cf6 100644 --- a/src/server/Dispatcher.h +++ b/src/server/Dispatcher.h @@ -80,6 +80,11 @@ private: //Simplification routine for setting up a process DProcess* createProcess(QString ID, QStringList cmds); + QJsonObject CreateDispatcherEventNotification(QString, QJsonObject); + + // Functions to do parsing out dispatcher queued tasks + // Please keep these sorted + QJsonObject parseIohyveFetchOutput(QString outputLog); private slots: void mkProcs(Dispatcher::PROC_QUEUE, DProcess *P); diff --git a/src/server/DispatcherParsing.h b/src/server/DispatcherParsing.cpp similarity index 75% rename from src/server/DispatcherParsing.h rename to src/server/DispatcherParsing.cpp index 4fec645..42ddda4 100644 --- a/src/server/DispatcherParsing.h +++ b/src/server/DispatcherParsing.cpp @@ -1,18 +1,16 @@ // =============================== -// PC-BSD REST API Server +// PC-BSD REST API Server // Available under the 3-clause BSD License // Written by: Ken Moore 2015-2016 // ================================= -// These static classes are for defining custom Dispatcher/Event notifications +// These classes are for defining custom Dispatcher/Event notifications // for individual subsystems //================================= -#ifndef _PCBSD_SYSADM_DISPATCH_SUBSYSTEM_FILTER_SYSTEM_H -#define _PCBSD_SYSADM_DISPATCH_SUBSYSTEM_FILTER_SYSTEM_H - #include "globals-qt.h" #include "EventWatcher.h" +#include "Dispatcher.h" -static QJsonObject CreateDispatcherEventNotification(QString ID, QJsonObject log){ +QJsonObject Dispatcher::CreateDispatcherEventNotification(QString ID, QJsonObject log){ //key outputs - need to set these if an event is going to be sent out QJsonObject args; //any arguments to send out QString namesp, name; //the namespace/name of the subsystem used @@ -35,7 +33,8 @@ static QJsonObject CreateDispatcherEventNotification(QString ID, QJsonObject log args.insert("state","finished"); }else{ args.insert("state","running"); - args.insert("progress", cLog.section("\n",-1, QString::SectionSkipEmpty)); //send the last line of the fetch + args.insert("progress", parseIohyveFetchOutput(cLog)); + //args.insert("progress", cLog.section("\n",-1, QString::SectionSkipEmpty)); //send the last line of the fetch } } @@ -47,5 +46,9 @@ static QJsonObject CreateDispatcherEventNotification(QString ID, QJsonObject log return args; } - -#endif \ No newline at end of file +QJsonObject Dispatcher::parseIohyveFetchOutput(QString output) +{ + qDebug() << "Parsing iohyve log" << output.section("\n", -1, QString::SectionSkipEmpty); + QJsonObject ret; + return ret; +} diff --git a/src/server/server.pro b/src/server/server.pro index 3ecb740..34259a9 100644 --- a/src/server/server.pro +++ b/src/server/server.pro @@ -13,8 +13,7 @@ HEADERS += globals.h globals-qt.h \ SslServer.h \ EventWatcher.h \ LogManager.h \ - Dispatcher.h \ - DispatcherParsing.h + Dispatcher.h SOURCES += main.cpp \ WebServer.cpp \ @@ -25,7 +24,8 @@ SOURCES += main.cpp \ AuthorizationManager.cpp \ EventWatcher.cpp \ LogManager.cpp \ - Dispatcher.cpp + Dispatcher.cpp \ + DispatcherParsing.cpp #Now pull in the the subsystem library classes and such include("library/library.pri");