/** * Execute the parsing process. * * @throws Zend_Console_Getopt_Exception * * @return void */ public function execute() { $files = $this->parseFiles(); if (count($files) < 1) { throw new Zend_Console_Getopt_Exception('No parsable files were found, did you specify any using the -f or -d parameter?'); } $parser = new DocBlox_Parser(); $parser->setTitle(htmlentities($this->getTitle())); if ($this->getVerbose()) { $parser->setLogLevel(DocBlox_Core_Log::DEBUG); } if ($this->getQuiet()) { $parser->setLogLevel(DocBlox_Core_Log::QUIET); } $parser->setExistingXml($this->getTarget() . '/structure.xml'); $parser->setIgnorePatterns($this->getIgnore()); $parser->setForced($this->getForce()); $parser->setMarkers($this->getMarkers()); $parser->setValidate($this->getValidate()); $parser->setPath($parser->getCommonPath($files)); // save the generate file to the path given as the 'target' option file_put_contents($this->getTarget() . '/structure.xml', $parser->parseFiles($files)); }
/** * Build a list of files (from the fileset elements) and call the DocBlox parser * @return string */ private function parseFiles() { $parser = new DocBlox_Parser(); $parser->setTitle($this->title); if ($this->quiet) { $parser->setLogLevel(Zend_Log::CRIT); } $files = array(); // filesets foreach ($this->filesets as $fs) { $ds = $fs->getDirectoryScanner($this->project); $dir = $fs->getDir($this->project); $srcFiles = $ds->getIncludedFiles(); foreach ($srcFiles as $file) { $files[] = $dir . FileSystem::getFileSystem()->getSeparator() . $file; } } $this->log("Will parse " . count($files) . " file(s)", Project::MSG_VERBOSE); return $parser->parseFiles($files); }
if (count($opts->getFiles()) < 1) { throw new Zend_Console_Getopt_Exception('No parsable files were found, did you specify any using the -f or -d parameter?'); } } catch (Zend_Console_Getopt_Exception $e) { // if the message actually contains anything, show it. if ($e->getMessage()) { echo $e->getMessage() . PHP_EOL . PHP_EOL; } // show help message and exit the application echo $opts->getUsageMessage(); exit; } // initialize the parser and pass the options as provided by the user or defaults $docblox = new DocBlox_Parser(); $docblox->setLogLevel($opts->getOption('verbose') ? Zend_Log::DEBUG : $docblox->getLogLevel()); $docblox->setExistingXml(is_readable($path.'/structure.xml') ? file_get_contents($path.'/structure.xml') : null); $docblox->setIgnorePatterns($opts->getIgnorePatterns()); $docblox->setForced($opts->getOption('force')); $docblox->setMarkers($opts->getMarkers()); $docblox->setValidate($opts->getOption('validate')); // save the generate file to the path given as the 'target' option file_put_contents($path.'/structure.xml', $docblox->parseFiles($opts->getFiles()));