diff options
author | Alexey Edelev <alexey.edelev@qt.io> | 2024-04-19 14:41:53 +0200 |
---|---|---|
committer | Alexey Edelev <alexey.edelev@qt.io> | 2024-04-24 17:25:16 +0200 |
commit | 1d4e0e43095e818dff75d7a0787aa5a696f7963b (patch) | |
tree | 244ba4e46e38352784507758410fb1e344ca236d | |
parent | 9145ffc50d1d154564f1aef46b8444972e50bfe5 (diff) |
Make QGrpcClientBase::trySerialize const
Driven by the review comment.
Task-number: QTBUG-123625
Change-Id: I59a07314eca50d73cc1afacb68de516d2dc349fb
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
-rw-r--r-- | src/grpc/qgrpcclientbase.cpp | 19 | ||||
-rw-r--r-- | src/grpc/qgrpcclientbase.h | 7 |
2 files changed, 15 insertions, 11 deletions
diff --git a/src/grpc/qgrpcclientbase.cpp b/src/grpc/qgrpcclientbase.cpp index 34cf470..2a332d5 100644 --- a/src/grpc/qgrpcclientbase.cpp +++ b/src/grpc/qgrpcclientbase.cpp @@ -205,8 +205,11 @@ std::shared_ptr<QGrpcCallReply> QGrpcClientBase::call(QLatin1StringView method, const QGrpcCallOptions &options) { std::optional<QByteArray> argData = trySerialize(arg); - if (!argData) + if (!argData) { + Q_EMIT errorOccurred(QGrpcStatus{ QGrpcStatus::Unknown, + tr("Serializing failed. Serializer is not ready.") }); return {}; + } return call(method, *argData, options); } @@ -305,17 +308,15 @@ QGrpcClientBase::startBidirStream(QLatin1StringView method, QByteArrayView arg, return grpcStream; } -std::optional<QByteArray> QGrpcClientBase::trySerialize(const QProtobufMessage &arg) +std::optional<QByteArray> QGrpcClientBase::trySerialize(const QProtobufMessage &arg) const { - Q_D(QGrpcClientBase); + Q_D(const QGrpcClientBase); using namespace Qt::StringLiterals; - auto _serializer = d->serializer(); - if (_serializer == nullptr) { - Q_EMIT errorOccurred(QGrpcStatus{ - QGrpcStatus::Unknown, tr("Serializing failed. Serializer is not ready.") }); + auto serializer = d->serializer(); + if (serializer == nullptr) return std::nullopt; - } - return _serializer->serialize(&arg); + + return serializer->serialize(&arg); } QT_END_NAMESPACE diff --git a/src/grpc/qgrpcclientbase.h b/src/grpc/qgrpcclientbase.h index 90180a0..9a4d9c8 100644 --- a/src/grpc/qgrpcclientbase.h +++ b/src/grpc/qgrpcclientbase.h @@ -58,8 +58,11 @@ protected: const QGrpcCallOptions &options) { std::optional<QByteArray> argData = trySerialize(arg); - if (!argData) + if (!argData) { + Q_EMIT errorOccurred(QGrpcStatus{ QGrpcStatus::Unknown, + tr("Serializing failed. Serializer is not ready.") }); return {}; + } if constexpr (std::is_same_v<StreamType, QGrpcServerStream>) { return startServerStream(method, *argData, options); } else if constexpr (std::is_same_v<StreamType, QGrpcClientStream>) { @@ -83,7 +86,7 @@ private: std::shared_ptr<QGrpcBidirStream> startBidirStream(QLatin1StringView method, QByteArrayView arg, const QGrpcCallOptions &options); - std::optional<QByteArray> trySerialize(const QProtobufMessage &arg); + std::optional<QByteArray> trySerialize(const QProtobufMessage &arg) const; Q_DISABLE_COPY_MOVE(QGrpcClientBase) Q_DECLARE_PRIVATE(QGrpcClientBase) |