knowL: Knowledge Libraries
Loading...
Searching...
No Matches
MetaTypeDefinitionString_p.h
1#include "Uris/askcore_types.h"
2#include "Uris/xsd.h"
3#include "MetaTypeImplementation.h"
4
5KNOWCORE_DEFINE_METATYPE_START_IMPLEMENTATION(QString)
6 ReturnValue<QByteArray> md5(const QString& _value) const override
7 {
8 QCryptographicHash hash(QCryptographicHash::Md5);
9 hash.addData(_value.toUtf8());
10 return kCrvSuccess(hash.result());
11 }
12 ReturnValue<QJsonValue> toJsonValue(const QString& _value, const SerialisationContexts&) const override
13 {
14 return kCrvSuccess(QJsonValue(_value));
15 }
16 ReturnVoid fromJsonValue(QString* _value, const QJsonValue& _json_value, const DeserialisationContexts&) const override
17 {
18 if(_json_value.isString())
19 {
20 *_value = _json_value.toString();
21 return kCrvSuccess();
22 } else {
23 return expectedError("string", _json_value);
24 }
25 }
26 ReturnValue<QCborValue> toCborValue(const QString& _value, const SerialisationContexts&) const override
27 {
28 return kCrvSuccess(QCborValue(_value));
29 }
30 ReturnVoid fromCborValue(QString* _value, const QCborValue& _cbor_value, const DeserialisationContexts&) const override
31 {
32 if(_cbor_value.isString())
33 {
34 *_value = _cbor_value.toString();
35 return kCrvSuccess();
36 } else {
37 return expectedError("string", _cbor_value);
38 }
39 }
40 ReturnValue<QString> printable(const QString& _value) const override
41 {
42 return kCrvSuccess(_value);
43 }
44 ReturnValue<QString> toRdfLiteral(const QString& _value, const SerialisationContexts&) const override
45 {
46 return kCrvSuccess(_value);
47 }
48 ReturnVoid fromRdfLiteral(QString* _value, const QString& _serialised, const DeserialisationContexts&) const override
49 {
50 *_value = _serialised;
51 return kCrvSuccess();
52 }
53KNOWCORE_DEFINE_METATYPE_FINISH_IMPLEMENTATION(QString)
54
55
56KNOWCORE_DEFINE_METATYPE_START_IMPLEMENTATION(QByteArray)
57 ReturnValue<QByteArray> md5(const QByteArray& _value) const override
58 {
59 QCryptographicHash hash(QCryptographicHash::Md5);
60 hash.addData(_value);
61 return kCrvSuccess(hash.result());
62 }
63 ReturnValue<QJsonValue> toJsonValue(const QByteArray& _value, const SerialisationContexts&) const override
64 {
65 return kCrvSuccess(QJsonValue(QString::fromLatin1(_value.toBase64())));
66 }
67 ReturnVoid fromJsonValue(QByteArray* _value, const QJsonValue& _json_value, const DeserialisationContexts&) const override
68 {
69 if(_json_value.isString())
70 {
71 QString b64 = _json_value.toString();
72 *_value = QByteArray::fromBase64(b64.toLatin1());
73 return kCrvSuccess();
74 } else {
75 return expectedError("string", _json_value);
76 }
77 }
78 ReturnValue<QCborValue> toCborValue(const QByteArray& _value, const SerialisationContexts&) const override
79 {
80 return kCrvSuccess(QCborValue(_value));
81 }
82 ReturnVoid fromCborValue(QByteArray* _value, const QCborValue& _cbor_value, const DeserialisationContexts&) const override
83 {
84 if(_cbor_value.isByteArray())
85 {
86 *_value = _cbor_value.toByteArray();
87 return kCrvSuccess();
88 } else {
89 return expectedError("bytearray", _cbor_value);
90 }
91 }
92 ReturnValue<QString> printable(const QByteArray& _value) const override
93 {
94 return kCrvSuccess(clog_qt::to_qstring(_value));
95 }
96 ReturnValue<QString> toRdfLiteral(const QByteArray& _value, const SerialisationContexts&) const override
97 {
98 return kCrvSuccess(QString::fromLatin1(_value.toBase64()));
99 }
100 ReturnVoid fromRdfLiteral(QByteArray* _value, const QString& _serialised, const DeserialisationContexts&) const override
101 {
102 *_value = QByteArray::fromBase64(_serialised.toLatin1());
103 return kCrvSuccess();
104 }
105KNOWCORE_DEFINE_METATYPE_FINISH_IMPLEMENTATION(QByteArray)