protected function generateConfigs($target) { $before = get_declared_classes(); $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS; foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($target, $flags)) as $fileInfo) { /** * @var \SplFileInfo $fileInfo */ if ($fileInfo->isFile() && preg_match('/\\.(php[0-9.]*|inc)$/', $fileInfo->getFilename())) { include_once $fileInfo->getPathname(); } } $after = get_declared_classes(); $new = array_diff($after, $before); $config = array(); foreach ($new as $class) { $config[$class] = $this->driver->getConfig($class); } return $config; }
/** * @return XmlAnnotationDriver */ public function getXmlDriverInstance() { if (!isset($this->_xmlDriver)) { $driver = new XmlAnnotationDriver($this->getAnnotationReaderFactoryInstance()); $driver->setAnnotationNamespace('\\Weasel\\XmlMarshaller\\Config\\DoctrineAnnotations'); $this->_autowire($driver); $this->_xmlDriver = $driver; } return $this->_xmlDriver; }