Пример #1
0
 private function __construct()
 {
     $task = Module_ControlCentre_Main::current_task();
     if ($task) {
         $task_id = $task->id;
         $this->_set_task_id($task_id);
     } else {
         $this->_set_counter_status(false);
     }
 }
Пример #2
0
 /**
  * @param int $task_id
  * @param int $module_id
  * @return string
  */
 static function meta_file_path($task_id, $module_id)
 {
     $meta_file = Module_ControlCentre_Main::data_file('meta/task/' . $task_id . '/' . $module_id . '.' . Module_FlowManager_Main::META_FILE_SUFFIX);
     $meta_dir = dirname($meta_file);
     if (!file_exists($meta_dir)) {
         @mkdir($meta_dir, 0744, true);
     }
     return $meta_file;
 }
Пример #3
0
 /**
  * @param int $task_id
  * @param int $mid
  * @return string
  */
 static function module_run_id($task_id, $mid)
 {
     $task_begin_time = Module_ControlCentre_Main::current_task()->create_time;
     return $task_id . '-' . $mid . '-' . $task_begin_time;
 }
Пример #4
0
 function setUp()
 {
     Module_ControlCentre_Main::get_instance()->create_task(self::$_task_id);
     Module_ControlCentre_Counter::register_keys_map(self::$_mid, [self::$_test_key => 'test', self::$_key1 => 'a', self::$_key2 => 'b']);
 }
Пример #5
0
 static function stop_task_action()
 {
     $task_id = Lib_Request::post_int_var('task_id');
     if (empty($task_id) && $task_id != 0) {
         Module_View_Main::view()->output(['errno' => Const_Err_DataAccess::ERR_GET_PARAM, 'data' => '无此任务']);
     }
     Module_OperationRecord_Main::add_record(Module_OperationRecord_Main::OPCODE_TASK_RUN_STOP);
     $result = Module_ControlCentre_Main::kill_task($task_id);
     Module_View_Main::view()->output($result);
 }
Пример #6
0
 /**
  * @param string $key
  * @return array
  */
 static function task_ctl_cmd($key)
 {
     return Module_ControlCentre_Main::current_task()->get_ctl_cmd($key);
 }
Пример #7
0
#!/usr/bin/env php
<?php 
require_once dirname(dirname(dirname(__FILE__))) . '/app/init.php';
$options = getopt('a:t:m:');
if (!isset($options['a']) || !isset($options['t']) || !isset($options['m'])) {
    p('use as xxx -a ap_id -t task_id -m module_id');
    exit;
}
$ap_id = $options['a'];
//'16723523721449231476';
$task_id = $options['t'];
// 123
$module_id = $options['m'];
//'9691047284819742687'
$control_options = [Const_DataAccess::RUN_OPTION_FLOW_INFO => [Module_FlowManager_Main::RUN_MODE => Module_FlowManager_Main::RUN_MODE_SINGLE_MODULE, Module_FlowManager_Main::RUN_OPTION_SINGLE_MODULE_ID => $module_id]];
$ap_info = Module_AccessPoint_Ap::get_ap($ap_id);
if ($ap_info['errno'] !== Const_Err_Base::ERR_OK) {
    p('Get ap faild! Result:' . Lib_Helper::format_err_struct($ap_info));
    exit;
}
$ap_info = $ap_info['data'];
$flow_id = $ap_info[Module_FlowManager_Main::KEY_FLOW_ID];
unset($ap_info[Module_FlowManager_Main::KEY_FLOW_ID]);
$control_options[Const_DataAccess::RUN_OPTION_ACCESS_POINT_INFO] = $ap_info;
$data = Module_ControlCentre_Main::run($flow_id, $control_options, $task_id);
p($data);
exit;
Пример #8
0
 /**
  * @param array $data
  * @param array $control_options
  * @return array
  */
 public function run($data = [], $control_options = [])
 {
     $begin_time = microtime(true);
     Lib_Log::monitor("TIMER task [%d] begin at [%.4f]", [Module_ControlCentre_Main::current_task_id(), $begin_time]);
     $this->options = $control_options;
     $flow = Module_ControlCentre_FlowManager::get_instance()->get_current_flow();
     // run before hooks
     $this->run_hooks(self::HOOK_TYPE_BEFORE_RUN, [$data]);
     // run
     $result = $flow->run($this->id, $data);
     // run after hook
     $this->run_hooks(self::HOOK_TYPE_AFTER_RUN, [$result]);
     $end_time = microtime(true);
     Lib_Log::monitor("TIMER task [%d] end at [%.4f], use [%.4f]", [Module_ControlCentre_Main::current_task_id(), $end_time, $end_time - $begin_time]);
     return $result;
 }