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 {
/**
// 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;
}
$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;
}
}
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')
$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('*')