Routines for converting the Param data to json.

This commit is contained in:
eelke 2017-12-09 15:46:56 +01:00
parent 0cbd0d16a1
commit 466920bf4e
3 changed files with 52 additions and 2 deletions

38
pglab/ParamListJson.cpp Normal file
View file

@ -0,0 +1,38 @@
#include "ParamListJson.h"
#include "ParamListModel.h"
Json::Value ParamToJson(const Param &param)
{
Json::Value v;
v["type"] = (int)param.type.toUtf8().data();
v["value"] = param.value.toUtf8().data();
return v;
}
Param ParamFromJson(const Json::Value &json)
{
Param p;
return p;
}
Json::Value ParamListModelToJson(const t_ParamList &list)
{
Json::Value root;
for (const auto &param : list) {
root.append(ParamToJson(param));
}
return root;
}
t_ParamList ParamListModelFromJson(const Json::Value &json)
{
t_ParamList result;
if (json.isArray()) {
result.reserve(json.size());
for (auto &e : json) {
result.push_back(ParamFromJson(e));
}
}
return result;
}

10
pglab/ParamListJson.h Normal file
View file

@ -0,0 +1,10 @@
#ifndef PARAMLISTJSON_H
#define PARAMLISTJSON_H
#include "json/json.h"
class ParamListModel;
Json::Value ParamListModelToJson(const t_ParamList &list);
#endif // PARAMLISTJSON_H

View file

@ -69,7 +69,8 @@ PgDatabaseCatalogue.cpp \
CodeBuilderConfiguration.cpp \
ResultTableModelUtil.cpp \
BaseTableModel.cpp \
QueryParamListController.cpp
QueryParamListController.cpp \
ParamListJson.cpp
HEADERS += \
QueryResultModel.h \
@ -113,7 +114,8 @@ PgDatabaseCatalogue.h \
CodeBuilderConfiguration.h \
ResultTableModelUtil.h \
BaseTableModel.h \
QueryParamListController.h
QueryParamListController.h \
ParamListJson.h
FORMS += mainwindow.ui \
DatabaseWindow.ui \