예제 #1
0
 /**
  * Returns formatter object
  * @param PHPLocFormatterElement $formatterElement
  * @throws BuildException
  * @return AbstractPHPLocFormatter
  */
 public static function createFormatter($formatterElement)
 {
     $formatter = null;
     $type = $formatterElement->getType();
     switch ($type) {
         case "xml":
             require_once 'phing/tasks/ext/phploc/PHPLocXMLFormatter.php';
             $formatter = new PHPLocXMLFormatter();
             break;
         case "csv":
             require_once 'phing/tasks/ext/phploc/PHPLocCSVFormatter.php';
             $formatter = new PHPLocCSVFormatter();
             break;
         case "txt":
         case "cli":
             require_once 'phing/tasks/ext/phploc/PHPLocTextFormatter.php';
             $formatter = new PHPLocTextFormatter();
             break;
         default:
             throw new BuildException("Formatter '" . $type . "' not implemented");
     }
     $formatter->setOutfile($formatterElement->getOutfile());
     $formatter->setToDir($formatterElement->getToDir());
     $formatter->setUseFile($formatterElement->getUseFile());
     return $formatter;
 }