mirror of https://github.com/qt/qtgrpc.git
Revert QGrpcDuration and use std::chrono::milliseconds directly again
This aligns with Qt's chrono first. This commit reverts: 7a7e5a1c0c4f8070cf153f2b2979bd2f8d5f7ea8. Task-number: QTBUG-123625 Pick-to: 6.8 Change-Id: If69b317e7cb52a90dfb2b5fd5859282acc51155c Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
This commit is contained in:
parent
c746115e11
commit
cc39238bbb
|
|
@ -23,7 +23,7 @@ using namespace Qt::StringLiterals;
|
||||||
class QGrpcCallOptionsPrivate : public QSharedData
|
class QGrpcCallOptionsPrivate : public QSharedData
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
std::optional<QGrpcDuration> deadline;
|
std::optional<std::chrono::milliseconds> deadline;
|
||||||
QGrpcMetadata metadata;
|
QGrpcMetadata metadata;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -89,7 +89,7 @@ QGrpcCallOptions::operator QVariant() const
|
||||||
/*!
|
/*!
|
||||||
Sets deadline value with \a deadline and returns updated QGrpcCallOptions object.
|
Sets deadline value with \a deadline and returns updated QGrpcCallOptions object.
|
||||||
*/
|
*/
|
||||||
QGrpcCallOptions &QGrpcCallOptions::setDeadline(QGrpcDuration deadline)
|
QGrpcCallOptions &QGrpcCallOptions::setDeadline(std::chrono::milliseconds deadline)
|
||||||
{
|
{
|
||||||
if (d_ptr->deadline == deadline)
|
if (d_ptr->deadline == deadline)
|
||||||
return *this;
|
return *this;
|
||||||
|
|
@ -139,7 +139,7 @@ QGrpcCallOptions &QGrpcCallOptions::setMetadata(QGrpcMetadata &&metadata)
|
||||||
|
|
||||||
If value was not set returns empty std::optional.
|
If value was not set returns empty std::optional.
|
||||||
*/
|
*/
|
||||||
std::optional<QGrpcDuration> QGrpcCallOptions::deadline() const noexcept
|
std::optional<std::chrono::milliseconds> QGrpcCallOptions::deadline() const noexcept
|
||||||
{
|
{
|
||||||
Q_D(const QGrpcCallOptions);
|
Q_D(const QGrpcCallOptions);
|
||||||
return d->deadline;
|
return d->deadline;
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@
|
||||||
#include <QtCore/qstringfwd.h>
|
#include <QtCore/qstringfwd.h>
|
||||||
#include <QtCore/qtclasshelpermacros.h>
|
#include <QtCore/qtclasshelpermacros.h>
|
||||||
|
|
||||||
|
#include <chrono>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
@ -37,11 +38,11 @@ public:
|
||||||
|
|
||||||
void swap(QGrpcCallOptions &other) noexcept { d_ptr.swap(other.d_ptr); }
|
void swap(QGrpcCallOptions &other) noexcept { d_ptr.swap(other.d_ptr); }
|
||||||
|
|
||||||
Q_GRPC_EXPORT QGrpcCallOptions &setDeadline(QGrpcDuration deadline);
|
Q_GRPC_EXPORT QGrpcCallOptions &setDeadline(std::chrono::milliseconds deadline);
|
||||||
Q_GRPC_EXPORT QGrpcCallOptions &setMetadata(const QGrpcMetadata &metadata);
|
Q_GRPC_EXPORT QGrpcCallOptions &setMetadata(const QGrpcMetadata &metadata);
|
||||||
Q_GRPC_EXPORT QGrpcCallOptions &setMetadata(QGrpcMetadata &&metadata);
|
Q_GRPC_EXPORT QGrpcCallOptions &setMetadata(QGrpcMetadata &&metadata);
|
||||||
|
|
||||||
[[nodiscard]] Q_GRPC_EXPORT std::optional<QGrpcDuration> deadline() const noexcept;
|
[[nodiscard]] Q_GRPC_EXPORT std::optional<std::chrono::milliseconds> deadline() const noexcept;
|
||||||
[[nodiscard]] Q_GRPC_EXPORT const QGrpcMetadata &metadata() const & noexcept;
|
[[nodiscard]] Q_GRPC_EXPORT const QGrpcMetadata &metadata() const & noexcept;
|
||||||
[[nodiscard]] Q_GRPC_EXPORT QGrpcMetadata metadata() &&;
|
[[nodiscard]] Q_GRPC_EXPORT QGrpcMetadata metadata() &&;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ using namespace QtGrpc;
|
||||||
class QGrpcChannelOptionsPrivate : public QSharedData
|
class QGrpcChannelOptionsPrivate : public QSharedData
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
std::optional<QGrpcDuration> deadline;
|
std::optional<std::chrono::milliseconds> deadline;
|
||||||
QGrpcMetadata metadata;
|
QGrpcMetadata metadata;
|
||||||
QGrpcSerializationFormat serializationFormat;
|
QGrpcSerializationFormat serializationFormat;
|
||||||
#if QT_CONFIG(ssl)
|
#if QT_CONFIG(ssl)
|
||||||
|
|
@ -96,7 +96,7 @@ QGrpcChannelOptions::operator QVariant() const
|
||||||
/*!
|
/*!
|
||||||
Sets deadline value with \a deadline and returns updated QGrpcChannelOptions object.
|
Sets deadline value with \a deadline and returns updated QGrpcChannelOptions object.
|
||||||
*/
|
*/
|
||||||
QGrpcChannelOptions &QGrpcChannelOptions::setDeadline(QGrpcDuration deadline)
|
QGrpcChannelOptions &QGrpcChannelOptions::setDeadline(std::chrono::milliseconds deadline)
|
||||||
{
|
{
|
||||||
if (d_ptr->deadline == deadline)
|
if (d_ptr->deadline == deadline)
|
||||||
return *this;
|
return *this;
|
||||||
|
|
@ -162,7 +162,7 @@ QGrpcChannelOptions::setSerializationFormat(const QGrpcSerializationFormat &form
|
||||||
|
|
||||||
If value was not set returns empty std::optional.
|
If value was not set returns empty std::optional.
|
||||||
*/
|
*/
|
||||||
std::optional<QGrpcDuration> QGrpcChannelOptions::deadline() const noexcept
|
std::optional<std::chrono::milliseconds> QGrpcChannelOptions::deadline() const noexcept
|
||||||
{
|
{
|
||||||
Q_D(const QGrpcChannelOptions);
|
Q_D(const QGrpcChannelOptions);
|
||||||
return d->deadline;
|
return d->deadline;
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@
|
||||||
#include <QtCore/qtclasshelpermacros.h>
|
#include <QtCore/qtclasshelpermacros.h>
|
||||||
#include <QtCore/qurl.h>
|
#include <QtCore/qurl.h>
|
||||||
|
|
||||||
|
#include <chrono>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
@ -43,13 +44,13 @@ public:
|
||||||
|
|
||||||
void swap(QGrpcChannelOptions &other) noexcept { d_ptr.swap(other.d_ptr); }
|
void swap(QGrpcChannelOptions &other) noexcept { d_ptr.swap(other.d_ptr); }
|
||||||
|
|
||||||
Q_GRPC_EXPORT QGrpcChannelOptions &setDeadline(QGrpcDuration deadline);
|
Q_GRPC_EXPORT QGrpcChannelOptions &setDeadline(std::chrono::milliseconds deadline);
|
||||||
Q_GRPC_EXPORT QGrpcChannelOptions &setMetadata(const QGrpcMetadata &metadata);
|
Q_GRPC_EXPORT QGrpcChannelOptions &setMetadata(const QGrpcMetadata &metadata);
|
||||||
Q_GRPC_EXPORT QGrpcChannelOptions &setMetadata(QGrpcMetadata &&metadata);
|
Q_GRPC_EXPORT QGrpcChannelOptions &setMetadata(QGrpcMetadata &&metadata);
|
||||||
Q_GRPC_EXPORT QGrpcChannelOptions &
|
Q_GRPC_EXPORT QGrpcChannelOptions &
|
||||||
setSerializationFormat(const QGrpcSerializationFormat &format);
|
setSerializationFormat(const QGrpcSerializationFormat &format);
|
||||||
|
|
||||||
[[nodiscard]] Q_GRPC_EXPORT std::optional<QGrpcDuration> deadline() const noexcept;
|
[[nodiscard]] Q_GRPC_EXPORT std::optional<std::chrono::milliseconds> deadline() const noexcept;
|
||||||
[[nodiscard]] Q_GRPC_EXPORT const QGrpcMetadata &metadata() const & noexcept;
|
[[nodiscard]] Q_GRPC_EXPORT const QGrpcMetadata &metadata() const & noexcept;
|
||||||
[[nodiscard]] Q_GRPC_EXPORT QGrpcMetadata metadata() &&;
|
[[nodiscard]] Q_GRPC_EXPORT QGrpcMetadata metadata() &&;
|
||||||
[[nodiscard]] Q_GRPC_EXPORT QGrpcSerializationFormat serializationFormat() const;
|
[[nodiscard]] Q_GRPC_EXPORT QGrpcSerializationFormat serializationFormat() const;
|
||||||
|
|
|
||||||
|
|
@ -6,13 +6,11 @@
|
||||||
|
|
||||||
#include <QtGrpc/qtgrpcglobal.h>
|
#include <QtGrpc/qtgrpcglobal.h>
|
||||||
|
|
||||||
#include <chrono>
|
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
// Create a forwarding header
|
// Create a forwarding header
|
||||||
# pragma qt_class(QGrpcMetadata)
|
# pragma qt_class(QGrpcMetadata)
|
||||||
# pragma qt_class(QGrpcDuration)
|
|
||||||
# pragma qt_sync_stop_processing
|
# pragma qt_sync_stop_processing
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
@ -21,7 +19,6 @@ QT_BEGIN_NAMESPACE
|
||||||
class QDebug;
|
class QDebug;
|
||||||
|
|
||||||
using QGrpcMetadata = std::unordered_multimap<QByteArray, QByteArray>;
|
using QGrpcMetadata = std::unordered_multimap<QByteArray, QByteArray>;
|
||||||
using QGrpcDuration = std::chrono::milliseconds;
|
|
||||||
|
|
||||||
#ifndef QT_NO_DEBUG_STREAM
|
#ifndef QT_NO_DEBUG_STREAM
|
||||||
Q_GRPC_EXPORT QDebug operator<<(QDebug debug, const QGrpcMetadata &metadata);
|
Q_GRPC_EXPORT QDebug operator<<(QDebug debug, const QGrpcMetadata &metadata);
|
||||||
|
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
// Copyright (C) 2024 The Qt Company Ltd.
|
|
||||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
|
|
||||||
|
|
||||||
/*!
|
|
||||||
\typealias QGrpcDuration
|
|
||||||
\inmodule QtGrpc
|
|
||||||
\relates std::chrono::milliseconds
|
|
||||||
\brief QGrpcDuration is a typedef for \l
|
|
||||||
{https://en.cppreference.com/w/cpp/chrono/duration}
|
|
||||||
{std::chrono::milliseconds}
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
@ -5,6 +5,8 @@
|
||||||
|
|
||||||
#include <chrono>
|
#include <chrono>
|
||||||
|
|
||||||
|
using namespace std::chrono_literals;
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
QQmlGrpcCallOptions::QQmlGrpcCallOptions(QObject *parent)
|
QQmlGrpcCallOptions::QQmlGrpcCallOptions(QObject *parent)
|
||||||
|
|
@ -17,13 +19,13 @@ QQmlGrpcCallOptions::~QQmlGrpcCallOptions() = default;
|
||||||
|
|
||||||
qint64 QQmlGrpcCallOptions::deadline() const
|
qint64 QQmlGrpcCallOptions::deadline() const
|
||||||
{
|
{
|
||||||
QGrpcDuration ms = m_options.deadline().value_or(QGrpcDuration(0));
|
std::chrono::milliseconds ms = m_options.deadline().value_or(0ms);
|
||||||
return ms.count();
|
return ms.count();
|
||||||
}
|
}
|
||||||
|
|
||||||
void QQmlGrpcCallOptions::setDeadline(qint64 value)
|
void QQmlGrpcCallOptions::setDeadline(qint64 value)
|
||||||
{
|
{
|
||||||
QGrpcDuration ms(value);
|
std::chrono::milliseconds ms(value);
|
||||||
m_options.setDeadline(ms);
|
m_options.setDeadline(ms);
|
||||||
emit deadlineChanged();
|
emit deadlineChanged();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,8 @@
|
||||||
|
|
||||||
#include <chrono>
|
#include <chrono>
|
||||||
|
|
||||||
|
using namespace std::chrono_literals;
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
class QQmlGrpcChannelOptionsPrivate : public QObjectPrivate
|
class QQmlGrpcChannelOptionsPrivate : public QObjectPrivate
|
||||||
|
|
@ -36,15 +38,14 @@ QQmlGrpcChannelOptions::QQmlGrpcChannelOptions(QObject *parent)
|
||||||
|
|
||||||
qint64 QQmlGrpcChannelOptions::deadline() const
|
qint64 QQmlGrpcChannelOptions::deadline() const
|
||||||
{
|
{
|
||||||
QGrpcDuration
|
std::chrono::milliseconds ms = d_func()->m_options.deadline().value_or(0ms);
|
||||||
ms = d_func()->m_options.deadline().value_or(QGrpcDuration(0));
|
|
||||||
return ms.count();
|
return ms.count();
|
||||||
}
|
}
|
||||||
|
|
||||||
void QQmlGrpcChannelOptions::setDeadline(qint64 value)
|
void QQmlGrpcChannelOptions::setDeadline(qint64 value)
|
||||||
{
|
{
|
||||||
Q_D(QQmlGrpcChannelOptions);
|
Q_D(QQmlGrpcChannelOptions);
|
||||||
QGrpcDuration ms(value);
|
std::chrono::milliseconds ms(value);
|
||||||
d->m_options.setDeadline(ms);
|
d->m_options.setDeadline(ms);
|
||||||
emit deadlineChanged();
|
emit deadlineChanged();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ void GrpcClientTestBase::initTestCase_data()
|
||||||
|
|
||||||
if (m_channels.testFlag(Channel::WithChannelDeadline)) {
|
if (m_channels.testFlag(Channel::WithChannelDeadline)) {
|
||||||
constexpr auto
|
constexpr auto
|
||||||
channelTimeout = QGrpcDuration(static_cast<int64_t>(MessageLatency * 0.25));
|
channelTimeout = std::chrono::milliseconds(static_cast<int64_t>(MessageLatency * 0.25));
|
||||||
QTest::newRow("Http2ClientDeadline")
|
QTest::newRow("Http2ClientDeadline")
|
||||||
<< QFlags{ Channel::Qt, Channel::WithChannelDeadline }
|
<< QFlags{ Channel::Qt, Channel::WithChannelDeadline }
|
||||||
<< std::shared_ptr<
|
<< std::shared_ptr<
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,7 @@ void QGrpcCallOptionsTest::hasImplicitQVariant() const
|
||||||
|
|
||||||
void QGrpcCallOptionsTest::hasMemberSwap() const
|
void QGrpcCallOptionsTest::hasMemberSwap() const
|
||||||
{
|
{
|
||||||
constexpr QGrpcDuration Dur = 50ms;
|
constexpr std::chrono::milliseconds Dur = 50ms;
|
||||||
|
|
||||||
QGrpcCallOptions o1;
|
QGrpcCallOptions o1;
|
||||||
o1.setDeadline(Dur);
|
o1.setDeadline(Dur);
|
||||||
|
|
@ -101,7 +101,7 @@ void QGrpcCallOptionsTest::propertyMetadata() const
|
||||||
|
|
||||||
void QGrpcCallOptionsTest::propertyDeadline() const
|
void QGrpcCallOptionsTest::propertyDeadline() const
|
||||||
{
|
{
|
||||||
constexpr QGrpcDuration Dur = 50ms;
|
constexpr std::chrono::milliseconds Dur = 50ms;
|
||||||
|
|
||||||
QGrpcCallOptions o1;
|
QGrpcCallOptions o1;
|
||||||
auto o1Detach = o1;
|
auto o1Detach = o1;
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ void QGrpcChannelOptionsTest::hasImplicitQVariant() const
|
||||||
|
|
||||||
void QGrpcChannelOptionsTest::hasMemberSwap() const
|
void QGrpcChannelOptionsTest::hasMemberSwap() const
|
||||||
{
|
{
|
||||||
constexpr QGrpcDuration Dur = 50ms;
|
constexpr std::chrono::milliseconds Dur = 50ms;
|
||||||
|
|
||||||
QGrpcChannelOptions o1;
|
QGrpcChannelOptions o1;
|
||||||
o1.setDeadline(Dur);
|
o1.setDeadline(Dur);
|
||||||
|
|
@ -104,7 +104,7 @@ void QGrpcChannelOptionsTest::propertyMetadata() const
|
||||||
|
|
||||||
void QGrpcChannelOptionsTest::propertyDeadline() const
|
void QGrpcChannelOptionsTest::propertyDeadline() const
|
||||||
{
|
{
|
||||||
constexpr QGrpcDuration Dur = 50ms;
|
constexpr std::chrono::milliseconds Dur = 50ms;
|
||||||
|
|
||||||
QGrpcChannelOptions o1;
|
QGrpcChannelOptions o1;
|
||||||
auto o1Detach = o1;
|
auto o1Detach = o1;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue