9 #include <Cutelyst/Application> 10 #include <Cutelyst/Request> 11 #include <Cutelyst/Response> 15 #include <QLoggingCategory> 17 Q_LOGGING_CATEGORY(C_SERVER_SM,
"cutelyst.server.staticmap", QtWarningMsg)
33 void StaticMap::addStaticMap(
const QString &mountPoint,
const QString &path,
bool append)
40 qCInfo(C_SERVER_SM) <<
"added mapping for" << mp <<
"=>" << path;
42 m_staticMaps.
push_back({mp, path, append});
43 std::sort(m_staticMaps.begin(),
46 return a.mountPoint.
size() < b.mountPoint.size();
59 if (tryToServeFile(c, mp, path)) {
71 localPath = path.
mid(mp.mountPoint.
size());
78 QString absFilePath = dir.absoluteFilePath(localPath);
83 return serveFile(c, absFilePath);
91 res->setStatus(Response::NotModified);
95 auto file =
new QFile(filename);
97 qCDebug(C_SERVER_SM) <<
"Serving" << filename;
111 headers.
setHeader(
"Cache-Control"_qba,
"public"_qba);
116 qCWarning(C_SERVER_SM) <<
"Could not serve" << filename << file->errorString();
121 #include "moc_staticmap.cpp"
QString & prepend(QChar ch)
qsizetype size() const const
bool exists() const const
QString & remove(qsizetype position, qsizetype n)
Headers headers() const noexcept
void beforePrepareAction(Cutelyst::Context *c, bool *skipMethod)
bool startsWith(const QString &s, Qt::CaseSensitivity cs) const const
virtual bool setup(Cutelyst::Application *app) override
The Cutelyst namespace holds all public Cutelyst API.
QDateTime lastModified() const const
bool isValid() const const
QString mid(qsizetype position, qsizetype n) const const
Base class for Cutelyst Plugins.
The Cutelyst application.
Response * response() const noexcept