MCPcopy Create free account
hub / github.com/KDE/labplot / save

Method save

src/backend/datasources/MQTTClient.cpp:1133–1181  ·  view source on GitHub ↗

############################################################################## ################## Serialization/Deserialization ########################### ############################################################################## ! Saves as XML. */

Source from the content-addressed store, hash-verified

1131 Saves as XML.
1132 */
1133void MQTTClient::save(QXmlStreamWriter* writer) const {
1134 writer->writeStartElement(QStringLiteral("MQTTClient"));
1135 writeBasicAttributes(writer);
1136 writeCommentElement(writer);
1137
1138 // general
1139 writer->writeStartElement(QStringLiteral("general"));
1140 writer->writeAttribute(QStringLiteral("subscriptionCount"), QString::number(m_MQTTSubscriptions.size()));
1141 writer->writeAttribute(QStringLiteral("updateType"), QString::number(static_cast<int>(m_updateType)));
1142 writer->writeAttribute(QStringLiteral("readingType"), QString::number(static_cast<int>(m_readingType)));
1143 writer->writeAttribute(QStringLiteral("keepValues"), QString::number(m_keepNValues));
1144
1145 if (m_updateType == UpdateType::TimeInterval)
1146 writer->writeAttribute(QStringLiteral("updateInterval"), QString::number(m_updateInterval));
1147
1148 if (m_readingType != ReadingType::TillEnd)
1149 writer->writeAttribute(QStringLiteral("sampleSize"), QString::number(m_sampleSize));
1150
1151 writer->writeAttribute(QStringLiteral("host"), m_client->hostname());
1152 writer->writeAttribute(QStringLiteral("port"), QString::number(m_client->port()));
1153 writer->writeAttribute(QStringLiteral("username"), m_client->username());
1154 writer->writeAttribute(QStringLiteral("password"), m_client->password());
1155 writer->writeAttribute(QStringLiteral("clientId"), m_client->clientId());
1156 writer->writeAttribute(QStringLiteral("useRetain"), QString::number(m_MQTTRetain));
1157 writer->writeAttribute(QStringLiteral("useWill"), QString::number(m_MQTTWill.enabled));
1158 writer->writeAttribute(QStringLiteral("willTopic"), m_MQTTWill.willTopic);
1159 writer->writeAttribute(QStringLiteral("willOwnMessage"), m_MQTTWill.willOwnMessage);
1160 writer->writeAttribute(QStringLiteral("willQoS"), QString::number(m_MQTTWill.willQoS));
1161 writer->writeAttribute(QStringLiteral("willRetain"), QString::number(m_MQTTWill.willRetain));
1162 writer->writeAttribute(QStringLiteral("willMessageType"), QString::number(static_cast<int>(m_MQTTWill.willMessageType)));
1163 writer->writeAttribute(QStringLiteral("willUpdateType"), QString::number(static_cast<int>(m_MQTTWill.willUpdateType)));
1164 writer->writeAttribute(QStringLiteral("willTimeInterval"), QString::number(m_MQTTWill.willTimeInterval));
1165
1166 for (int i = 0; i < m_MQTTWill.willStatistics.count(); ++i)
1167 writer->writeAttribute(QStringLiteral("willStatistics") + QString::number(i), QString::number(m_MQTTWill.willStatistics[i]));
1168 writer->writeAttribute(QStringLiteral("useID"), QString::number(m_MQTTUseID));
1169 writer->writeAttribute(QStringLiteral("useAuthentication"), QString::number(m_MQTTUseAuthentication));
1170
1171 writer->writeEndElement();
1172
1173 // filter
1174 m_filter->save(writer);
1175
1176 // MQTTSubscription
1177 for (auto* sub : children<MQTTSubscription>(AbstractAspect::ChildIndexFlag::IncludeHidden))
1178 sub->save(writer);
1179
1180 writer->writeEndElement(); // "MQTTClient"
1181}
1182
1183/*!
1184 Loads from XML.

Callers

nothing calls this directly

Calls 3

sizeMethod · 0.45
portMethod · 0.45
countMethod · 0.45

Tested by

no test coverage detected