protected function execute(InputInterface $input, OutputInterface $output)
{
$leftFilename = $input->getArgument('left');
$rightFilename = $input->getArgument('right');
$debug = $input->getOption('debug');
$loggerHelper = new LoggerHelper();
$logger = $loggerHelper->create($debug);
if (!$rightFilename || !file_exists($rightFilename)) {
$logger->info('right file not set or invalid - creating right file from resources');
$cacheDir = sys_get_temp_dir() . '/browscap-diff/' . microtime(true) . '/';
$rightFilename = $cacheDir . 'full_php_browscap.ini';
if (!file_exists($cacheDir)) {
mkdir($cacheDir, 0777, true);
}
$buildGenerator = new BuildGenerator($input->getOption('resources'), $cacheDir);
$writerCollectionFactory = new FullPhpWriterFactory();
$writerCollection = $writerCollectionFactory->createCollection($logger, $cacheDir);
$buildGenerator->setLogger($logger)->setCollectionCreator(new CollectionCreator())->setWriterCollection($writerCollection);
$buildGenerator->run($input->getArgument('version'), false);
}
$generator = new DiffGenerator();
$generator->setLogger($logger)->run($leftFilename, $rightFilename);
$logger->info('Diff done.');
}