/** * @param Config $config */ public function run(Config $config) { $iterator = new RecursiveDirectoryIterator($config->getExportDir()); $iterator = new RecursiveIteratorIterator($iterator); $iterator = new \RegexIterator($iterator, '/\\.puml$/'); $files = []; foreach ($iterator as $file) { /** @var $file \SplFileInfo */ $files[] = $file->getPathname(); } $jar = $config->getParam(PlantUml::CONFIG_JAR); passthru(sprintf('java -jar %s %s', $jar, implode(' ', $files))); }
/** * @param Config $config * @param string $file * * @return string */ private function createOnlineLink(Config $config, $file) { $content = file_get_contents($file); $generator = new OnlineGenerator($config->getParam(Plugin::CONFIG_URL)); return $generator->createUrl($content); }