forked from foldynl/QLog
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathJsonFormat.h
31 lines (24 loc) · 874 Bytes
/
JsonFormat.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#ifndef QLOG_LOGFORMAT_JSONFORMAT_H
#define QLOG_LOGFORMAT_JSONFORMAT_H
#include <QJsonArray>
#include "AdxFormat.h"
class JsonFormat : public AdxFormat
{
public:
explicit JsonFormat(QTextStream& stream) : AdxFormat(stream) {}
virtual bool importNext(QSqlRecord& contact) override;
virtual void importStart() override {};
virtual void importEnd() override {};
virtual void exportStart() override;
virtual void exportContact(const QSqlRecord& record, QMap<QString, QString> *) override;
virtual void exportEnd() override;
protected:
virtual void writeField(const QString &name,
bool presenceCondition,
const QString &value,
const QString &type="") override;
private:
QJsonArray data;
QJsonObject contact;
};
#endif // QLOG_LOGFORMAT_JSONFORMAT_H