/**
  * {@inheritdoc}
  */
 public function warmUp($cacheDir)
 {
     $adapter = new PhpArrayAdapter($this->phpArrayFile, $this->fallbackPool);
     $annotatedClassPatterns = $cacheDir . '/annotations.map';
     if (!is_file($annotatedClassPatterns)) {
         $adapter->warmUp(array());
         return;
     }
     $annotatedClasses = (include $annotatedClassPatterns);
     $arrayPool = new ArrayAdapter(0, false);
     $reader = new CachedReader($this->annotationReader, new DoctrineProvider($arrayPool));
     $throwingAutoloader = function ($class) {
         throw new \ReflectionException(sprintf('Class %s does not exist', $class));
     };
     spl_autoload_register($throwingAutoloader);
     try {
         foreach ($annotatedClasses as $class) {
             try {
                 $this->readAllComponents($reader, $class);
             } catch (\ReflectionException $e) {
                 // ignore failing reflection
             }
         }
     } finally {
         spl_autoload_unregister($throwingAutoloader);
     }
     $values = $arrayPool->getValues();
     $adapter->warmUp($values);
     foreach ($values as $k => $v) {
         $item = $this->fallbackPool->getItem($k);
         $this->fallbackPool->saveDeferred($item->set($v));
     }
     $this->fallbackPool->commit();
 }
 /**
  * {@inheritdoc}
  */
 public function warmUp($cacheDir)
 {
     $adapter = new PhpArrayAdapter($this->phpArrayFile, $this->fallbackPool);
     $annotatedClassPatterns = $cacheDir . '/annotations.map';
     if (!is_file($annotatedClassPatterns)) {
         $adapter->warmUp(array());
         return;
     }
     $annotatedClasses = (include $annotatedClassPatterns);
     $arrayPool = new ArrayAdapter(0, false);
     $reader = new CachedReader($this->annotationReader, new DoctrineProvider($arrayPool));
     foreach ($annotatedClasses as $class) {
         $this->readAllComponents($reader, $class);
     }
     $values = $arrayPool->getValues();
     $adapter->warmUp($values);
     foreach ($values as $k => $v) {
         $item = $this->fallbackPool->getItem($k);
         $this->fallbackPool->saveDeferred($item->set($v));
     }
     $this->fallbackPool->commit();
 }
 /**
  * {@inheritdoc}
  */
 public function warmUp($cacheDir)
 {
     if (!class_exists(CacheClassMetadataFactory::class) || !method_exists(XmlFileLoader::class, 'getMappedClasses') || !method_exists(YamlFileLoader::class, 'getMappedClasses')) {
         return;
     }
     $adapter = new PhpArrayAdapter($this->phpArrayFile, $this->fallbackPool);
     $arrayPool = new ArrayAdapter(0, false);
     $metadataFactory = new CacheClassMetadataFactory(new ClassMetadataFactory(new LoaderChain($this->loaders)), $arrayPool);
     foreach ($this->extractSupportedLoaders($this->loaders) as $loader) {
         foreach ($loader->getMappedClasses() as $mappedClass) {
             $metadataFactory->getMetadataFor($mappedClass);
         }
     }
     $values = $arrayPool->getValues();
     $adapter->warmUp($values);
     foreach ($values as $k => $v) {
         $item = $this->fallbackPool->getItem($k);
         $this->fallbackPool->saveDeferred($item->set($v));
     }
     $this->fallbackPool->commit();
 }
 /**
  * {@inheritdoc}
  */
 public function warmUp($cacheDir)
 {
     if (!method_exists($this->validatorBuilder, 'getLoaders')) {
         return;
     }
     $adapter = new PhpArrayAdapter($this->phpArrayFile, $this->fallbackPool);
     $arrayPool = new ArrayAdapter(0, false);
     $loaders = $this->validatorBuilder->getLoaders();
     $metadataFactory = new LazyLoadingMetadataFactory(new LoaderChain($loaders), new Psr6Cache($arrayPool));
     foreach ($this->extractSupportedLoaders($loaders) as $loader) {
         foreach ($loader->getMappedClasses() as $mappedClass) {
             $metadataFactory->getMetadataFor($mappedClass);
         }
     }
     $values = $arrayPool->getValues();
     $adapter->warmUp($values);
     foreach ($values as $k => $v) {
         $item = $this->fallbackPool->getItem($k);
         $this->fallbackPool->saveDeferred($item->set($v));
     }
     $this->fallbackPool->commit();
 }
 /**
  * {@inheritdoc}
  */
 public function warmUp($cacheDir)
 {
     if (!method_exists($this->validatorBuilder, 'getLoaders')) {
         return;
     }
     $adapter = new PhpArrayAdapter($this->phpArrayFile, $this->fallbackPool);
     $arrayPool = new ArrayAdapter(0, false);
     $loaders = $this->validatorBuilder->getLoaders();
     $metadataFactory = new LazyLoadingMetadataFactory(new LoaderChain($loaders), new Psr6Cache($arrayPool));
     $throwingAutoloader = function ($class) {
         throw new \ReflectionException(sprintf('Class %s does not exist', $class));
     };
     spl_autoload_register($throwingAutoloader);
     try {
         foreach ($this->extractSupportedLoaders($loaders) as $loader) {
             foreach ($loader->getMappedClasses() as $mappedClass) {
                 try {
                     if ($metadataFactory->hasMetadataFor($mappedClass)) {
                         $metadataFactory->getMetadataFor($mappedClass);
                     }
                 } catch (\ReflectionException $e) {
                     // ignore failing reflection
                 }
             }
         }
     } finally {
         spl_autoload_unregister($throwingAutoloader);
     }
     $values = $arrayPool->getValues();
     $adapter->warmUp($values);
     foreach ($values as $k => $v) {
         $item = $this->fallbackPool->getItem($k);
         $this->fallbackPool->saveDeferred($item->set($v));
     }
     $this->fallbackPool->commit();
 }