diff --git a/energyplugin/etm/scheduler/optimizerclient.cpp b/energyplugin/etm/scheduler/optimizerclient.cpp index 12834c3..d337979 100644 --- a/energyplugin/etm/scheduler/optimizerclient.cpp +++ b/energyplugin/etm/scheduler/optimizerclient.cpp @@ -200,6 +200,18 @@ bool OptimizerClient::writeToken(const QString &path, const QByteArray &token, Q return true; } +QStringList OptimizerClient::knownErrorCodes() +{ + return {QStringLiteral("invalid-endpoint"), QStringLiteral("token-too-short"), + QStringLiteral("connect-failed"), QStringLiteral("closed-during-handshake"), + QStringLiteral("connection-lost"), QStringLiteral("handshake-timeout"), + QStringLiteral("handshake-refused"), QStringLiteral("invalid-handshake"), + QStringLiteral("major-mismatch"), QStringLiteral("line-too-long"), + QStringLiteral("invalid-json"), QStringLiteral("missing-id"), QStringLiteral("unknown-id"), + QStringLiteral("timeout"), QStringLiteral("rpc-error"), QStringLiteral("invalid-response"), + QStringLiteral("disconnected")}; +} + int OptimizerClient::tokenLength(const QByteArray &token) { return int(QString::fromUtf8(token).toUcs4().size()); diff --git a/energyplugin/etm/scheduler/optimizerclient.h b/energyplugin/etm/scheduler/optimizerclient.h index 5aed674..3c81ab0 100644 --- a/energyplugin/etm/scheduler/optimizerclient.h +++ b/energyplugin/etm/scheduler/optimizerclient.h @@ -165,6 +165,14 @@ public: */ static constexpr int kMinTokenChars = 16; + /*! + * \brief Les codes d'erreur que le client peut retenir (\c lastErrorCode()) ou émettre + * (\c planFailed(), \c protocolError()). + * \return Connexion, handshake, ligne écartée, requête. La suite \c etm-powersync-protocolschema + * confronte la liste au code source du client. + */ + static QStringList knownErrorCodes(); + /*! \brief Longueur d'un token, comparée à \c kMinTokenChars. * \param token Le token, en UTF-8. \return Son nombre de caractères (points de code). */ static int tokenLength(const QByteArray &token); diff --git a/energyplugin/etm/scheduler/optimizerplan.cpp b/energyplugin/etm/scheduler/optimizerplan.cpp index 06dec95..dab0ea8 100644 --- a/energyplugin/etm/scheduler/optimizerplan.cpp +++ b/energyplugin/etm/scheduler/optimizerplan.cpp @@ -103,9 +103,7 @@ QString convertirAction(const QVariant &brut, const QHash