value * * @param array list of additional parameters * * @return bool TRUE on success, FALSE for unknown commands, or * a PEAR error on failure * * @access public */ function run($command, $params) { $failmsg = ''; switch ($command) { case 'package': { $pkginfofile = isset($params[0]) ? $params[0] : null; ob_start(); $packager =& new PEAR_Packager($this->config->get('php_dir'), $this->config->get('ext_dir'), $this->config->get('doc_dir')); $packager->debug = $this->config->get('verbose'); $result = $packager->Package($pkginfofile); $output = ob_get_contents(); ob_end_clean(); $lines = explode("\n", $output); foreach ($lines as $line) { $this->ui->displayLine($line); } if (PEAR::isError($result)) { $this->ui->displayLine("Package failed!"); } else { $this->ui->displayLine("Package ok."); } break; } default: { return false; } } if ($failmsg) { return $this->raiseError($failmsg); } return true; } // }}} } ?>