class LoaderChain
Same name in this branch
- 11.1.x vendor/symfony/serializer/Mapping/Loader/LoaderChain.php \Symfony\Component\Serializer\Mapping\Loader\LoaderChain
Loads validation metadata from multiple {@link LoaderInterface} instances.
Pass the loaders when constructing the chain. Once {@link loadClassMetadata()} is called, that method will be called on all loaders in the chain.
@author Bernhard Schussek <bschussek@gmail.com>
Hierarchy
- class \Symfony\Component\Validator\Mapping\Loader\LoaderChain implements \Symfony\Component\Validator\Mapping\Loader\LoaderInterface
Expanded class hierarchy of LoaderChain
1 file declares its use of LoaderChain
- ValidatorBuilder.php in vendor/
symfony/ validator/ ValidatorBuilder.php
File
-
vendor/
symfony/ validator/ Mapping/ Loader/ LoaderChain.php, line 26
Namespace
Symfony\Component\Validator\Mapping\LoaderView source
class LoaderChain implements LoaderInterface {
/**
* @param LoaderInterface[] $loaders The metadata loaders to use
*
* @throws MappingException If any of the loaders has an invalid type
*/
public function __construct(array $loaders) {
foreach ($loaders as $loader) {
if (!$loader instanceof LoaderInterface) {
throw new MappingException(\sprintf('Class "%s" is expected to implement LoaderInterface.', get_debug_type($loader)));
}
}
}
public function loadClassMetadata(ClassMetadata $metadata) : bool {
$success = false;
foreach ($this->loaders as $loader) {
$success = $loader->loadClassMetadata($metadata) || $success;
}
return $success;
}
/**
* @return LoaderInterface[]
*/
public function getLoaders() : array {
return $this->loaders;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|
LoaderChain::getLoaders | public | function | |||
LoaderChain::loadClassMetadata | public | function | Loads validation metadata into a {@link ClassMetadata} instance. | Overrides LoaderInterface::loadClassMetadata | |
LoaderChain::__construct | public | function | 1 |