aboutsummaryrefslogtreecommitdiff
path: root/src/content/static/Static.hpp
blob: 8d702ecaabc4745252a9ac67d50e8da9a61fe1e4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef STATIC_H
#define STATIC_H 1

#include "../../Content.hpp"
#include "../../Filesystem.hpp"

class Static : public Content
{
public:
    explicit Static(std::string uriBasePath, std::shared_ptr<Filesystem> const & fs);

    bool Init();
    void Shutdown();
    bool Render(RequestResponse & rr, RenderData & rd, std::string & out);

    std::string & GetUriBasePath();
    std::string const & GetMainTemplate() const;
    Redirections & GetRedirections();

private:
    std::string m_UriBasePath;
    std::string m_MainTemplatePath;
    Redirections m_Redirections;
    std::shared_ptr<Filesystem> const m_StaticFiles;
};

#endif