8#include <Cutelyst/cutelyst_global.h>
10#include <QtCore/QDateTime>
11#include <QtCore/QMetaType>
12#include <QtCore/QVariant>
29#ifdef Q_COMPILER_INITIALIZER_LISTS
33 inline Headers(std::initializer_list<std::pair<QString, QString>> list)
35 for (std::initializer_list<std::pair<QString, QString>>::const_iterator it = list.begin();
38 pushHeader(it->first, it->second);
47 QString contentDisposition()
const;
52 void setCacheControl(
const QString &value);
58 void setContentDisposition(
const QString &contentDisposition);
65 void setContentDispositionAttachment(
const QString &filename = QString());
72 QString contentEncoding()
const;
78 void setContentEncoding(
const QString &encoding);
86 QString contentType()
const;
92 void setContentType(
const QString &contentType);
97 QString contentTypeCharset()
const;
103 void setContentTypeCharset(
const QString &charset);
108 bool contentIsText()
const;
114 bool contentIsHtml()
const;
119 bool contentIsXHtml()
const;
124 bool contentIsXml()
const;
129 bool contentIsJson()
const;
134 qint64 contentLength()
const;
139 void setContentLength(qint64 value);
144 QString setDateWithDateTime(
const QDateTime &date);
149 QDateTime date()
const;
156 QString ifModifiedSince()
const;
165 QDateTime ifModifiedSinceDateTime()
const;
171 bool ifModifiedSince(
const QDateTime &lastModified)
const;
182 bool ifMatch(
const QString &etag)
const;
192 bool ifNoneMatch(
const QString &etag)
const;
199 void setETag(
const QString &etag);
204 QString lastModified()
const;
209 void setLastModified(
const QString &value);
215 QString setLastModified(
const QDateTime &lastModified);
221 QString server()
const;
227 void setServer(
const QString &value);
233 QString connection()
const;
240 QString host()
const;
246 QString userAgent()
const;
252 QString referer()
const;
260 void setReferer(
const QString &value);
267 void setWwwAuthenticate(
const QString &value);
272 void setProxyAuthenticate(
const QString &value);
277 QString authorization()
const;
282 QString authorizationBearer()
const;
289 QString authorizationBasic()
const;
308 QString setAuthorizationBasic(
const QString &username,
const QString &password);
314 QString proxyAuthorization()
const;
321 QString proxyAuthorizationBasic()
const;
333 QString header(
const QString &field)
const;
338 QString header(
const QString &field,
const QString &defaultValue)
const;
343 void setHeader(
const QString &field,
const QString &value);
348 void setHeader(
const QString &field,
const QStringList &values);
353 void pushHeader(
const QString &field,
const QString &value);
362 inline void pushRawHeader(
const QString &field,
const QString &value);
367 void pushHeader(
const QString &field,
const QStringList &values);
372 void removeHeader(
const QString &field);
377 inline void clear() { m_data.clear(); }
382 inline QMultiHash<QString, QString>
data()
const {
return m_data; }
387 bool contains(
const QString &field)
const;
392 QString operator[](
const QString &key)
const;
399 m_data = other.m_data;
414 QMultiHash<QString, QString> m_data;
419 m_data.insert(field, value);
The Cutelyst namespace holds all public Cutelyst API.