/** * @return bool */ public function bootstrap() { $this->_make_app_config(); // config manager $this->_autoload_register(); // set autoloader Sys_Config::get_instance()->set_config_path(self::conf_path())->check_run_mode_suffix(true); $this->_init_log(); // run the logger \Module_ModuleManager_Main::get_instance()->init_with_module_path(self::module_path()); //init the modules manager return true; }
/** * @param int $task_id * @param int $mid * @param array $data */ static function record_run_section_finish_hook($task_id, $mid, &$data) { Lib_Log::debug("%s finish section hook, task_id: %d, mid: %d", [__METHOD__, $task_id, $mid]); $record_id = Module_ModuleManager_Main::get_instance()->get_module_run_id($task_id, $mid); $record = ['result' => $data]; if (!isset($data[Const_DataAccess::MREK_ERRNO]) || $data[Const_DataAccess::MREK_ERRNO] !== Const_Err_Base::ERR_OK) { $record['status'] = isset($data[Const_DataAccess::MREK_STATUS]) ? $data[Const_DataAccess::MREK_STATUS] : Module_ModuleManager_Main::RUN_MODULE_STATUS_FAILED; } $class = Module_ModuleManager_Main::get_instance()->get_module_class($mid); if ($class) { $result = $data['data']; if (method_exists($class, 'format_record_msg')) { $stat = call_user_func([$class, 'format_record_msg'], $result); } empty($stat) || ($record['section_stat'] = $stat); } $model_module_record = new Model_TaskRunModuleRecord(); $model_module_record->update_record($record_id, $record); }
/** * @param int $task_id * @param int $mid * @param array $data * @return array */ private function _run_module($task_id, $mid, $data) { $data = Module_ModuleManager_Main::get_instance()->run_module($task_id, $mid, $data, $this->options); // 数据检查 if (!isset($data['errno'])) { Lib_Log::error("run module [%d] faild!. err: return data not has errno.\tdata:%s", [$mid, json_encode($data)]); return Lib_Helper::get_err_struct(Const_Err_Base::ERR_DATA_FORMAT, '模块[' . $mid . ']返回数据错误'); } return $data; }