} $pid_file = $pid_tmp_dir . "/pid.txt"; $cur_pid = trim(file_get_contents($pid_file)); $sql = "select banners_image from banners where not isnull(banners_image) and banners_id<=" . $cur_pid . " order by banners_id desc limit 10"; $result = $db->Execute($sql); if (!$result->EOF) { $saved_arr = array(); while (!$result->EOF) { $image_file = $result->fields['banners_image']; /** $image_file = trim($image_file); if(strlen($string) == 0){ continue; } /**/ checkDirExists($image_file); if (!is_file(DIR_WS_IMAGES . $image_file)) { $data = file_get_contents($remote_host . $image_file); file_put_contents(DIR_WS_IMAGES . $image_file, $data); $saved_arr[] = DIR_WS_IMAGES . $image_file; } $result->MoveNext(); } } else { die('all finished.'); } $next_pid = (int) $cur_pid - 10; file_put_contents($pid_file, $next_pid); echo "after 1500,window will refresh. next pid is " . $next_pid; echo "<br>last image file:" . $image_file; echo "<br>saved files:";
$base_dir = getcwd(); $defs_arg = str_replace(array('.', ' ', "\n", "\t", "\r"), '', $argv[1]); $defs_loc = $base_dir . '/' . $defs_arg . '/'; $diagram_loc = $defs_loc . '/diagrams/'; $file_list = \djsharman\libraries\OS_DirFileList::getFileList($defs_loc, array(), true, array('xml')); function checkDirExists($target_dir) { $dir_exists = is_dir($target_dir); if ($dir_exists == false) { $res = mkdir($target_dir, '755', true); if ($res == false) { die('could not create gen directory'); } } } checkDirExists($diagram_loc); echo "===========================================\n"; echo "===========================================\n"; foreach ($file_list as $file) { $path_parts = pathinfo($file); $className = $path_parts['filename']; echo "Processing {$className} \n"; $interfaceName = $className . 'State'; $abstractClassName = 'Abstract' . $interfaceName; $parser = new SpecificationParser($file); $operations = $parser->getOperations(); $queries = $parser->getQueries(); $states = $parser->getStates(); $conf_namespace = $parser->getNamespace(); $namespace = $conf_namespace . $className; $use = str_replace('\\', '_', '\\' . $namespace);
$path_parts = pathinfo($file); $className = $path_parts['filename']; echo "Processing {$className} \n"; $interfaceName = $className . 'State'; $abstractClassName = 'Abstract' . $interfaceName; $parser = new SpecificationParser($file); $conf_namespace = $parser->getNamespace(); $namespace = $conf_namespace . '\\' . $className; $test_namespace = $namespace . '\\test'; // the use string for the test cases $use = '\\' . $namespace . '\\' . $className; $conf_target_dir = $parser->getTargetDir(); $target_dir = $base_dir . '/' . $conf_target_dir . '/' . $className . '/'; $target_test_dir = $target_dir . '/test/'; checkDirExists($target_dir); checkDirExists($target_test_dir); $operations = $parser->getOperations(); $queries = $parser->getQueries(); $states = $parser->getStates(); $generator = new InterfaceGenerator(); $generator->generate($namespace, $operations, $interfaceName, $target_dir); $generator = new TransitionExceptionGenerator(); $generator->generate($namespace, $target_dir); $generator = new AbstractStateClassGenerator(); $generator->generate($namespace, $operations, $abstractClassName, $interfaceName, $target_dir); $generator = new ClassGenerator(); $generator->generate($namespace, $operations, $states, $className, $interfaceName, $target_dir); $codeGenerator = new StateClassGenerator(); $testGenerator = new TestGenerator(); // namespace of the class to be tested foreach ($states as $state => $data) {