DRY QHttpHeaders::value() implementation
Pick-to: 6.7 Task-number: QTBUG-122020 Change-Id: I403d376734587d721d27f7093b3774068829a46d Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
This commit is contained in:
parent
9c0a79d323
commit
b370e1b7f1
@ -792,6 +792,7 @@ public:
|
||||
|
||||
void combinedValue(const HeaderName &name, QByteArray &result) const;
|
||||
void values(const HeaderName &name, QList<QByteArray> &result) const;
|
||||
QByteArrayView value(const HeaderName &name, QByteArrayView defaultValue) const noexcept;
|
||||
|
||||
QList<Header> headers;
|
||||
};
|
||||
@ -842,6 +843,15 @@ void QHttpHeadersPrivate::values(const HeaderName &name, QList<QByteArray> &resu
|
||||
}
|
||||
}
|
||||
|
||||
QByteArrayView QHttpHeadersPrivate::value(const HeaderName &name, QByteArrayView defaultValue) const noexcept
|
||||
{
|
||||
for (const auto &h : std::as_const(headers)) {
|
||||
if (h.name == name)
|
||||
return h.value;
|
||||
}
|
||||
return defaultValue;
|
||||
}
|
||||
|
||||
/*!
|
||||
Creates a new QHttpHeaders object.
|
||||
*/
|
||||
@ -1279,13 +1289,7 @@ QByteArrayView QHttpHeaders::value(QAnyStringView name, QByteArrayView defaultVa
|
||||
if (isEmpty())
|
||||
return defaultValue;
|
||||
|
||||
const HeaderName hname(name);
|
||||
|
||||
for (const auto &h : std::as_const(d->headers)) {
|
||||
if (h.name == hname)
|
||||
return h.value;
|
||||
}
|
||||
return defaultValue;
|
||||
return d->value(HeaderName{name}, defaultValue);
|
||||
}
|
||||
|
||||
/*!
|
||||
@ -1296,13 +1300,7 @@ QByteArrayView QHttpHeaders::value(WellKnownHeader name, QByteArrayView defaultV
|
||||
if (isEmpty())
|
||||
return defaultValue;
|
||||
|
||||
const HeaderName hname(name);
|
||||
|
||||
for (const auto &h : std::as_const(d->headers)) {
|
||||
if (h.name == hname)
|
||||
return h.value;
|
||||
}
|
||||
return defaultValue;
|
||||
return d->value(HeaderName{name}, defaultValue);
|
||||
}
|
||||
|
||||
/*!
|
||||
|
Loading…
x
Reference in New Issue
Block a user