Merge pull request #6786 from nupplaphil/issue/6758-console_storage

Fix handling table name during storage move
This commit is contained in:
Hypolite Petovan 2019-03-01 16:53:55 -05:00 committed by GitHub
commit 50a6058f66
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 4 deletions

View File

@ -112,19 +112,21 @@ HELP;
protected function do_move() protected function do_move()
{ {
$table = null; $tables = null;
if (count($this->args) < 1 || count($this->args) > 2) { if (count($this->args) < 1 || count($this->args) > 2) {
throw new CommandArgsException('Invalid arguments'); throw new CommandArgsException('Invalid arguments');
} }
if (count($this->args) == 2) { if (count($this->args) == 2) {
$table = strtolower($this->args[1]); $table = strtolower($this->args[1]);
if (!in_array($table, ['photo', 'attach'])) { if (!in_array($table, ['photo', 'attach'])) {
throw new CommandArgsException('Invalid table'); throw new CommandArgsException('Invalid table');
} }
$tables = [$table];
} }
$current = StorageManager::getBackend(); $current = StorageManager::getBackend();
$r = StorageManager::move($current); $r = StorageManager::move($current, $tables);
$this->out(sprintf('Moved %d files', $r)); $this->out(sprintf('Moved %d files', $r));
} }
} }

View File

@ -110,8 +110,8 @@ class StorageManager
* Copy existing data to destination storage and delete from source. * Copy existing data to destination storage and delete from source.
* This method cannot move to legacy in-table `data` field. * This method cannot move to legacy in-table `data` field.
* *
* @param string $dest Destination storage class name * @param string $dest Destination storage class name
* @param array $tables Tables to look in for resources. Optional, defaults to ['photo', 'attach'] * @param array|null $tables Tables to look in for resources. Optional, defaults to ['photo', 'attach']
* *
* @throws \Exception * @throws \Exception
* @return int Number of moved resources * @return int Number of moved resources