vendor/doctrine/doctrine-bundle/Dbal/SchemaAssetsFilterManager.php line 10

Open in your IDE?
  1. <?php
  2. namespace Doctrine\Bundle\DoctrineBundle\Dbal;
  3. use Doctrine\DBAL\Schema\AbstractAsset;
  4. /**
  5.  * Manages schema filters passed to Connection::setSchemaAssetsFilter()
  6.  */
  7. class SchemaAssetsFilterManager
  8. {
  9.     /** @var callable[] */
  10.     private $schemaAssetFilters;
  11.     /** @param callable[] $schemaAssetFilters */
  12.     public function __construct(array $schemaAssetFilters)
  13.     {
  14.         $this->schemaAssetFilters $schemaAssetFilters;
  15.     }
  16.     /** @param string|AbstractAsset $assetName */
  17.     public function __invoke($assetName): bool
  18.     {
  19.         foreach ($this->schemaAssetFilters as $schemaAssetFilter) {
  20.             if ($schemaAssetFilter($assetName) === false) {
  21.                 return false;
  22.             }
  23.         }
  24.         return true;
  25.     }
  26. }