winix/core/requestcontroller.h

63 lines
1.0 KiB
C++
Executable File

/*
* This file is a part of Winix
* and is not publicly distributed
*
* Copyright (c) 2008-2010, Tomasz Sowa
* All rights reserved.
*
*/
#ifndef headerfilecmslucorerequestcontroller
#define headerfilecmslucorerequestcontroller
#include <unistd.h>
#include <sys/stat.h>
#include <iostream>
#include <sys/types.h>
#include <pwd.h>
#include <grp.h>
#include <errno.h>
#include <ctime>
#include "../content/content.h"
#include "sessionmanager.h"
#include "functionparser.h"
#include "sessioncontainer.h"
class RequestController
{
Content content;
SessionManager session_manager;
bool BaseUrlRedirect();
FunctionParser function_parser;
public:
RequestController();
~RequestController();
bool Init();
void Close();
void Loop();
void LoadSessions();
void SaveSessions();
void SaveSessionsIfNeeded(); // saving only once a day
void DeleteAllPluginsData();
SessionContainer::Iterator SessionBegin();
SessionContainer::Iterator SessionEnd();
time_t last_sessions_save;
};
extern RequestController req_controller;
#endif