diff options
Diffstat (limited to 'src/wrap.cpp')
| -rwxr-xr-x | src/wrap.cpp | 132 |
1 files changed, 17 insertions, 115 deletions
diff --git a/src/wrap.cpp b/src/wrap.cpp index d7e0dba..f675c1a 100755 --- a/src/wrap.cpp +++ b/src/wrap.cpp @@ -6,140 +6,42 @@ using namespace std; //<<* -chat* wrap::CHAT = NULL; +chat* wrap::CHAT; #ifdef DATABASE -data* wrap::DATA = NULL; +data* wrap::DATA; #endif -gcol* wrap::GCOL = NULL; -sman* wrap::SMAN = NULL; -modl* wrap::MODL = NULL; +gcol* wrap::GCOL; +sman* wrap::SMAN; +modl* wrap::MODL; //*>> -conf* wrap::CONF = NULL; -html* wrap::HTML = NULL; +conf* wrap::CONF; +html* wrap::HTML; #ifdef LOGGING -logd* wrap::LOGD = NULL; +logd* wrap::LOGD; #endif #ifdef NCURSES -ncur* wrap::NCUR = NULL; +ncur* wrap::NCUR; #endif -sock* wrap::SOCK = NULL; -stats* wrap::STAT = NULL; -timr* wrap::TIMR = NULL; -pool* wrap::POOL = NULL; -dynamic_wrap* wrap::WRAP = NULL; +sock* wrap::SOCK; +stats* wrap::STAT; +timr* wrap::TIMR; +pool* wrap::POOL; +dynamic_wrap* wrap::WRAP; void wrap::system_message( string s_message ) { #ifdef NCURSES - if(NCUR) - { - NCUR->print( s_message ); - } - - else - { - cout << s_message << endl; - } + wrap::NCUR->print( s_message ); #endif - #ifdef SERVMSG - cout << s_message << endl; -#endif -#ifdef LOGGING - - LOGD->log_simple_line( s_message + "\n" ); + cout << s_message << endl; #endif -} - -void -wrap::init_wrapper(map<string,string>* p_main_loop_params) -{ - // Init the dynamic wrapper (is needed to pass all wrapped objects through a single pointer). - WRAP = new dynamic_wrap; - - // Init the config manager. - WRAP->CONF = CONF = new conf( CONFILE, p_main_loop_params ); - delete p_main_loop_params, - - // Init the statistic manager. - WRAP->STAT = STAT = new stats; - - // Init the html-template manager. - WRAP->HTML = HTML = new html; - #ifdef LOGGING - // Init the system message logd - WRAP->LOGD = LOGD = new logd( CONF->get_elem("httpd.logging.systemfile"), - CONF->get_elem("httpd.logging.systemlines") ); -#endif - - //<<* - // Init the session manager. - WRAP->SMAN = SMAN = new sman; - //*>> - // Init the socket manager. - int i_port = tool::string2int( wrap::CONF->get_elem( "httpd.serverport" ) ); - - WRAP->SOCK = SOCK = new sock; - // create the server socket and set it up to accept connections. - if(SOCK->_make_server_socket ( i_port ) <= 0) - { - system_message(SOCKER1); - exit(-1); - } - -#ifdef NCURSES - - WRAP->NCUR = NCUR = new ncur; // init the ncurses admin interface. - NCUR->run(); // run the thread - - // Wait until ncurses interface has been initialized. - do - { - usleep(1000); - } - while ( ! NCUR->is_ready() ); - - HTML->print_cached(0); -#else -#ifdef CLI - - cli* p_cli = new cli; - p_cli->run(); -#endif -#endif - - // Init the thread pool - WRAP->POOL = POOL = new pool; - - //<<* - // Init the chat manager. - WRAP->CHAT = CHAT = new chat; - //*>> - - // Init the system timer. - WRAP->TIMR = TIMR = new timr; - - //<<* - // Init the module-loader manager. - WRAP->MODL = MODL = new modl; - - // Init the garbage collector - WRAP->GCOL = GCOL = new gcol; - - // Init the data manager. -#ifdef DATABASE - - WRAP->DATA = DATA = new data; + wrap::LOGD->log_simple_line( s_message + "\n" ); #endif - //*>> - - // Run threads - TIMR->run(); } - #endif |
