diff options
author | Juha Vuolle <juha.vuolle@qt.io> | 2024-02-29 13:08:27 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2024-03-05 09:40:08 +0000 |
commit | 3d6393f5337cd92aadb2801097352451997d6b83 (patch) | |
tree | c5260c0183858433334417f4681c642d352816a9 | |
parent | a772e3139528fe31c76e78fbb83539d6c739ca7d (diff) |
DRY QHttpHeaders::combinedValue() implementation
Task-number: QTBUG-122020
Change-Id: I6232ea725d47800a9236ed90b70004a915bc8b65
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
(cherry picked from commit de37316160920f88101fbb59e32b401d139f2e80)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/network/access/qhttpheaders.cpp | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/src/network/access/qhttpheaders.cpp b/src/network/access/qhttpheaders.cpp index d0b6ed7a7a..18b76a3035 100644 --- a/src/network/access/qhttpheaders.cpp +++ b/src/network/access/qhttpheaders.cpp @@ -790,6 +790,8 @@ public: using Self = QExplicitlySharedDataPointer<QHttpHeadersPrivate>; static void removeAll(Self &d, const HeaderName &name); + void combinedValue(const HeaderName &name, QByteArray &result) const; + QList<Header> headers; }; @@ -819,6 +821,18 @@ void QHttpHeadersPrivate::removeAll(Self &d, const HeaderName &name) } } +void QHttpHeadersPrivate::combinedValue(const HeaderName &name, QByteArray &result) const +{ + const char* separator = ""; + for (const auto &h : std::as_const(headers)) { + if (h.name == name) { + result.append(separator); + result.append(h.value); + separator = ", "; + } + } +} + /*! Creates a new QHttpHeaders object. */ @@ -1365,15 +1379,7 @@ QByteArray QHttpHeaders::combinedValue(QAnyStringView name) const if (isEmpty()) return result; - const HeaderName hname(name); - const char* separator = ""; - for (const auto &h : std::as_const(d->headers)) { - if (h.name == hname) { - result.append(separator); - result.append(h.value); - separator = ", "; - } - } + d->combinedValue(HeaderName{name}, result); return result; } @@ -1386,15 +1392,7 @@ QByteArray QHttpHeaders::combinedValue(WellKnownHeader name) const if (isEmpty()) return result; - const HeaderName hname(name); - const char* separator = ""; - for (const auto &h : std::as_const(d->headers)) { - if (h.name == hname) { - result.append(separator); - result.append(h.value); - separator = ", "; - } - } + d->combinedValue(HeaderName{name}, result); return result; } |