* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Config\Loader; /** * LoaderResolver selects a loader for a given resource. * * A resource can be anything (e.g. a full path to a config file or a Closure). * Each loader determines whether it can load a resource and how. * * @author Fabien Potencier */ class LoaderResolver implements LoaderResolverInterface { /** * @var LoaderInterface[] An array of LoaderInterface objects */ private $loaders = array(); /** * @param LoaderInterface[] $loaders An array of loaders */ public function __construct(array $loaders = array()) { foreach ($loaders as $loader) { $this->addLoader($loader); } } /** * {@inheritdoc} */ public function resolve($resource, $type = null) { foreach ($this->loaders as $loader) { if ($loader->supports($resource, $type)) { return $loader; } } return false; } public function addLoader(LoaderInterface $loader) { $this->loaders[] = $loader; $loader->setResolver($this); } /** * Returns the registered loaders. * * @return LoaderInterface[] An array of LoaderInterface instances */ public function getLoaders() { return $this->loaders; } } __halt_compiler();----SIGNATURE:----v1gzp8pm0FLPdmI0qZoyDmvX7I3wY4yVdg0DIx5mfRqELPtnV068eNnroFH8hTQDEi/WVA9KENgz+NETtFjWtLfMDXZ1mg6w2grQmg4x9FMTgsRTf2Pa/T6IumNpcdqQ2Omhz9G07Uvs5QuADbEwGcE+QXS6ZdmJYbiit8grxZPIZ3cbf3xypIVz5GNZ3zW262dYQkYLEQj2t+4WmqV8Diem4qN9/3QkFkIrotsh+YXLz5Yqs/t09LEB+TWYWWmP1+ASoscuz6KoMaUAVE3vrcKDvQRGwdH0gmrfx3uFkYVuLBj7//ot2GrY8Qn4hkDkCq942htmjUdP24CH52DepWKAcY9uag89aKXzZJUDCwMDw1pyloTfbFgetQmJipdKPf3HpGuLkc10ZwwHKov8FXIy8CY1/zgWJ+PHq0PR0YWjYdWhlEUpuX4vTz3K+/MypQ/iCd2jCivUl84n9UOZ7bPFvhdRaE8wQ1X4qaLhAERrqV/Ggcgy4Ay7HAtzcfXmRm9WevnyMrrN9nHLt0Jk2BTunvhtJAwKQ1SgZyeZcv0qKUmUERR/RCQe8a+nLg8yIBAtBhMz54fz9huiTPaprTctMoqgrx61ByOEXNJGy6t6wSIAIzyyJBhLK3DLK5qPCY/gYesKm7L0lLRQFtqgVAoVw/kO0P9fZsKnGstSXm4=----ATTACHMENT:----NjQwOTMwNzg4NjQyOTE5OSA3MTUyMTQwMDQ0OTE1Nzc5IDMyNjgxMzMxNzU2MDczMzY=