Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
45 lines (33 sloc) 1.03 KB
#ifndef _XSCRIPT_SERVER_H_
#define _XSCRIPT_SERVER_H_
#include <boost/shared_ptr.hpp>
#include <boost/utility.hpp>
#include <string>
namespace xscript {
class Config;
class RequestData;
class Request;
class Context;
class Script;
class Server : private boost::noncopyable {
public:
Server(Config *config);
virtual ~Server();
virtual bool needApplyMainStylesheet(Request *request) const;
virtual bool needApplyPerblockStylesheet(Request *request) const;
virtual void run() = 0;
virtual bool isOffline() const;
const std::string& hostname() const;
protected:
virtual void handleRequest(const boost::shared_ptr<RequestData>& request_data);
static std::pair<std::string, bool> findScript(const std::string &name);
void sendHeaders(Context *ctx);
virtual Context* createContext(
const boost::shared_ptr<Script> &script, const boost::shared_ptr<RequestData> &request_data);
protected:
Config *config_;
private:
std::string hostname_;
};
} // namespace xscript
#endif // _XSCRIPT_SERVER_H_
Jump to Line
Something went wrong with that request. Please try again.