10#include <Cutelyst/Context>
11#include <Cutelyst/Response>
13#include <QtCore/QLoggingCategory>
14#include <QtCore/QVariant>
32 return Component::OnlyExecute;
45 if (Q_UNLIKELY(c->
error())) {
46 const auto errors = c->
errors();
47 for (
const QString &error : errors) {
48 qCCritical(CUTELYST_VIEW) << error;
51 const QString acceptEncoding = c->req()->
header(QStringLiteral(
"ACCEPT_ENCODING"));
52 if (d->minimalSizeToDeflate >= 0 && output.
count() > d->minimalSizeToDeflate &&
54 QByteArray compressedData = qCompress(output);
55 compressedData.
remove(0, 6);
56 compressedData.
chop(4);
58 response->
setBody(compressedData);
68 d->minimalSizeToDeflate = minSize;
70#include "moc_view.cpp"
Component(QObject *parent=nullptr)
void setName(const QString &name)
QStringList errors() const noexcept
Returns a list of errors that were defined.
bool error() const noexcept
Returns true if an error was set.
Response * response() const noexcept
QString header(const QString &key) const
Headers & headers() noexcept
bool hasBody() const noexcept
void setBody(QIODevice *body)
Cutelyst View abstract view component
virtual QByteArray render(Context *c) const =0
View(QObject *parent, const QString &name)
void setMinimalSizeToDeflate(qint32 minSize=-1)
virtual Modifiers modifiers() const override
The Cutelyst namespace holds all public Cutelyst API.
int count(char ch) const const
QByteArray & remove(int pos, int len)
QObject * parent() const const
bool contains(QChar ch, Qt::CaseSensitivity cs) const const