diff options
author | Roeland Jago Douma <roeland@famdouma.nl> | 2016-09-06 21:18:51 +0200 |
---|---|---|
committer | Roeland Jago Douma <roeland@famdouma.nl> | 2016-09-06 21:20:02 +0200 |
commit | 4b8de8ba8e764f43c758fe1c789a5ea48560b48a (patch) | |
tree | cf0f5d2a737c1bd12e7972ce27d7bcde06bc53a2 /core/Command | |
parent | b57a1063a3a2cb26ac909488fc27db65fde6e544 (diff) | |
download | nextcloud-server-4b8de8ba8e764f43c758fe1c789a5ea48560b48a.tar.gz nextcloud-server-4b8de8ba8e764f43c758fe1c789a5ea48560b48a.zip |
Fix dbconvert
Diffstat (limited to 'core/Command')
-rw-r--r-- | core/Command/Db/ConvertType.php | 37 |
1 files changed, 18 insertions, 19 deletions
diff --git a/core/Command/Db/ConvertType.php b/core/Command/Db/ConvertType.php index ccf5c0685cb..f8367f75867 100644 --- a/core/Command/Db/ConvertType.php +++ b/core/Command/Db/ConvertType.php @@ -32,10 +32,14 @@ use \OCP\IConfig; use OC\DB\Connection; use OC\DB\ConnectionFactory; use Symfony\Component\Console\Command\Command; +use Symfony\Component\Console\Helper\ProgressBar; +use Symfony\Component\Console\Helper\QuestionHelper; use Symfony\Component\Console\Input\InputArgument; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Question\ConfirmationQuestion; +use Symfony\Component\Console\Question\Question; class ConvertType extends Command { /** @@ -158,13 +162,12 @@ class ConvertType extends Command { // Read password by interacting if ($input->isInteractive()) { - /** @var $dialog \Symfony\Component\Console\Helper\DialogHelper */ - $dialog = $this->getHelperSet()->get('dialog'); - $password = $dialog->askHiddenResponse( - $output, - '<question>What is the database password?</question>', - false - ); + /** @var QuestionHelper $helper */ + $helper = $this->getHelper('question'); + $question = new Question('What is the database password?'); + $question->setHidden(true); + $question->setHiddenFallback(false); + $password = $helper->ask($input, $output, $question); $input->setOption('password', $password); return; } @@ -195,13 +198,12 @@ class ConvertType extends Command { $output->writeln('<comment>Please note that tables belonging to available but currently not installed apps</comment>'); $output->writeln('<comment>can be included by specifying the --all-apps option.</comment>'); } - /** @var $dialog \Symfony\Component\Console\Helper\DialogHelper */ - $dialog = $this->getHelperSet()->get('dialog'); - if (!$dialog->askConfirmation( - $output, - '<question>Continue with the conversion (y/n)? [n] </question>', - false - )) { + + /** @var QuestionHelper $helper */ + $helper = $this->getHelper('question'); + $question = new ConfirmationQuestion('Continue with the conversion (y/n)? [n] ', false); + + if (!$helper->ask($input, $output, $question)) { return; } } @@ -256,9 +258,6 @@ class ConvertType extends Command { protected function copyTable(Connection $fromDB, Connection $toDB, $table, InputInterface $input, OutputInterface $output) { $chunkSize = $input->getOption('chunk-size'); - /** @var $progress \Symfony\Component\Console\Helper\ProgressHelper */ - $progress = $this->getHelperSet()->get('progress'); - $query = $fromDB->getQueryBuilder(); $query->automaticTablePrefix(false); $query->selectAlias($query->createFunction('COUNT(*)'), 'num_entries') @@ -272,11 +271,11 @@ class ConvertType extends Command { $output->writeln('chunked query, ' . $numChunks . ' chunks'); } - $progress->start($output, $count); + $progress = new ProgressBar($output, $count); + $progress->start(); $redraw = $count > $chunkSize ? 100 : ($count > 100 ? 5 : 1); $progress->setRedrawFrequency($redraw); - $query = $fromDB->getQueryBuilder(); $query->automaticTablePrefix(false); $query->select('*') |