* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Bundle\FrameworkBundle\Command; use Symfony\Component\Console\Attribute\AsCommand; use Symfony\Component\Translation\Command\XliffLintCommand as BaseLintCommand; /** * Validates XLIFF files syntax and outputs encountered errors. * * @author Grégoire Pineau * @author Robin Chalas * @author Javier Eguiluz * * @final */ #[AsCommand(name: 'lint:xliff', description: 'Lint an XLIFF file and outputs encountered errors')] class XliffLintCommand extends BaseLintCommand { public function __construct() { $directoryIteratorProvider = function ($directory, $default) { if (!is_dir($directory)) { $directory = $this->getApplication()->getKernel()->locateResource($directory); } return $default($directory); }; $isReadableProvider = fn ($fileOrDirectory, $default) => str_starts_with($fileOrDirectory, '@') || $default($fileOrDirectory); parent::__construct(null, $directoryIteratorProvider, $isReadableProvider); } protected function configure(): void { parent::configure(); $this->setHelp($this->getHelp().<<<'EOF' Or find all files in a bundle: php %command.full_name% @AcmeDemoBundle EOF ); } }