[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/applications/files/management/ -> PhabricatorFilesManagementWorkflow.php (source)

   1  <?php
   2  
   3  abstract class PhabricatorFilesManagementWorkflow
   4    extends PhabricatorManagementWorkflow {
   5  
   6    protected function buildIterator(PhutilArgumentParser $args) {
   7      $names = $args->getArg('names');
   8  
   9      if ($args->getArg('all')) {
  10        if ($names) {
  11          throw new PhutilArgumentUsageException(
  12            'Specify either a list of files or `--all`, but not both.');
  13        }
  14        return new LiskMigrationIterator(new PhabricatorFile());
  15      }
  16  
  17      if ($names) {
  18        $query = id(new PhabricatorObjectQuery())
  19          ->setViewer($this->getViewer())
  20          ->withNames($names)
  21          ->withTypes(array(PhabricatorFileFilePHIDType::TYPECONST));
  22  
  23        $query->execute();
  24        $files = $query->getNamedResults();
  25  
  26        foreach ($names as $name) {
  27          if (empty($files[$name])) {
  28            throw new PhutilArgumentUsageException(
  29              "No file '{$name}' exists!");
  30          }
  31        }
  32  
  33        return array_values($files);
  34      }
  35  
  36      return null;
  37    }
  38  
  39  
  40  }


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1