/** * Attempts to read the uploadable fields. * * @param string $class The class name to test (FQCN). * * @return array A list of uploadable fields. */ public function getUploadableFields($class) { $metadata = $this->reader->getMetadataForClass($class); $uploadableFields = array(); foreach ($metadata->classMetadata as $classMetadata) { $uploadableFields = array_merge($uploadableFields, $classMetadata->fields); } return $uploadableFields; }
/** * @param ContainerBuilder $container * @param string[] $directories * @param string $pattern * @param AdvancedMetadataFactoryInterface $factory * @param MetadataConverter $converter * @param bool $disableGrep */ private function handlePattern(ContainerBuilder $container, $directories, $pattern, $factory, $converter, $disableGrep) { $finder = new PatternFinder($pattern, '*.php', $disableGrep); $files = $finder->findFiles($directories); $container->addResource(new ServiceFilesResource($files, $directories, $disableGrep)); foreach ($files as $file) { $container->addResource(new FileResource($file)); require_once $file; $className = $this->getClassName($file); if (null === ($metadata = $factory->getMetadataForClass($className))) { continue; } if (null === $metadata->getOutsideClassMetadata()->id) { continue; } if (!$metadata->getOutsideClassMetadata()->isLoadedInEnvironment($container->getParameter('kernel.environment'))) { continue; } foreach ($converter->convert($metadata) as $id => $definition) { $container->setDefinition($id, $definition); } } }