/**
* {@inheritdoc}
*/
public function restore(OutputInterface $output)
{
$driver = $this->storageRegistry->getService();
$iterator = new \DirectoryIterator($this->archivePath);
$files = $this->filterFiles($iterator);
$totalCount = count($files);
$files = $this->filterExisting($driver, $files);
$count = count($files);
$output->writeln(sprintf('Restoring %s of %s suites.', $count, $totalCount));
foreach ($files as $index => $file) {
$this->writeProgress($output, $index, $count, '.');
$document = new Document();
$document->load($file->getPathname());
$collection = $this->xmlDecoder->decode($document);
$driver->store($collection);
}
$output->write(PHP_EOL);
}