* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Bundle\DoctrineBundle\Command\Proxy; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; use Doctrine\ORM\Tools\Console\Command\ClearCache\ResultCommand; /** * Command to clear the result cache of the various cache drivers. * * @author Fabien Potencier * @author Jonathan H. Wage */ class ClearResultCacheDoctrineCommand extends ResultCommand { protected function configure() { parent::configure(); $this ->setName('doctrine:cache:clear-result') ->setDescription('Clear result cache for a entity manager') ->addOption('em', null, InputOption::VALUE_OPTIONAL, 'The entity manager to use for this command') ->setHelp(<<doctrine:cache:clear-result command clears all result cache for the default entity manager: php app/console doctrine:cache:clear-result You can also optionally specify the --em option to specify which entity manager to clear the cache for: php app/console doctrine:cache:clear-result --em=default If you don't want to clear all result cache you can specify some additional options to control what cache is deleted: php app/console doctrine:cache:clear-result --id=cache_key Or you can specify a --regex to delete cache entries that match it: php app/console doctrine:cache:clear-result --regex="user_(.*)" You can also specify a --prefix or --suffix to delete cache entries for: php app/console doctrine:cache:clear-result --prefix="user_" --suffix="_frontend" EOT ); } protected function execute(InputInterface $input, OutputInterface $output) { DoctrineCommandHelper::setApplicationEntityManager($this->getApplication(), $input->getOption('em')); return parent::execute($input, $output); } }