| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2007, projektfarm Gmbh, Till Brehm, Falko Timme |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | All rights reserved. |
| | | |
| | | Redistribution and use in source and binary forms, with or without modification, |
| | |
| | | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| | | */ |
| | | |
| | | |
| | | class services { |
| | | |
| | | var $registered_services = array(); |
| | | var $delayed_restarts = array(); |
| | | var $debug = false; |
| | | |
| | | // This function adds a request for restarting |
| | | // a service at the end of the configuration run. |
| | |
| | | if(is_array($this->registered_services[$service_name])) { |
| | | $this->delayed_restarts[$service_name] = $action; |
| | | } else { |
| | | $app->log("Unable to add a delayed restart for '$service_name'. Service '$service_name' is not registered.",LOGLEVEL_WARNING); |
| | | $app->log("Unable to add a delayed restart for '$service_name'. Service not registered.",LOGLEVEL_WARNING); |
| | | } |
| | | |
| | | } |
| | |
| | | global $app; |
| | | |
| | | if(is_array($this->registered_services[$service_name])) { |
| | | $module_name = $this->registered_services[$service_name]["module"]; |
| | | $function_name = $this->registered_services[$service_name]["function"]; |
| | | $app->log("Call function '$function_name' in module '$module_name'.",LOGLEVEL_DEBUG); |
| | | call_user_method($function_name,$app->loaded_modules[$module_name],$action); |
| | | $module_name = $this->registered_services[$service_name]['module']; |
| | | $function_name = $this->registered_services[$service_name]['function']; |
| | | $app->log("Calling function '$function_name' from module '$module_name'.",LOGLEVEL_DEBUG); |
| | | // call_user_method($function_name,$app->loaded_modules[$module_name],$action); |
| | | call_user_func(array($app->loaded_modules[$module_name],$function_name),$action); |
| | | } else { |
| | | $app->log("Unable to restart $service_name. Service $service_name is not registered.",LOGLEVEL_WARNING); |
| | | $app->log("Unable to restart $service_name. Service not registered.",LOGLEVEL_WARNING); |
| | | } |
| | | |
| | | } |
| | |
| | | function registerService($service_name,$module_name, $function_name) { |
| | | global $app; |
| | | $this->registered_services[$service_name] = array('module' => $module_name, 'function' => $function_name); |
| | | $app->log("Registered Service '$service_name' in module '$module_name' for processing function '$function_name'",LOGLEVEL_DEBUG); |
| | | if($this->debug) $app->log("Registered Service '$service_name' in module '$module_name' for processing function '$function_name'",LOGLEVEL_DEBUG); |
| | | } |
| | | |
| | | // This function is called at the end of the server script to restart services. |
| | |
| | | } |
| | | |
| | | } |
| | | ?> |
| | | ?> |