1<?php 2 3/* 4 * This file is part of the Symfony package. 5 * 6 * (c) Fabien Potencier <fabien@symfony.com> 7 * 8 * For the full copyright and license information, please view the LICENSE 9 * file that was distributed with this source code. 10 */ 11 12namespace Symfony\Component\Routing\Loader; 13 14use Symfony\Component\Config\Loader\FileLoader; 15use Symfony\Component\Routing\RouteCollection; 16 17/** 18 * GlobFileLoader loads files from a glob pattern. 19 * 20 * @author Nicolas Grekas <p@tchwork.com> 21 */ 22class GlobFileLoader extends FileLoader 23{ 24 /** 25 * {@inheritdoc} 26 */ 27 public function load($resource, $type = null) 28 { 29 $collection = new RouteCollection(); 30 31 foreach ($this->glob($resource, false, $globResource) as $path => $info) { 32 $collection->addCollection($this->import($path)); 33 } 34 35 $collection->addResource($globResource); 36 37 return $collection; 38 } 39 40 /** 41 * {@inheritdoc} 42 */ 43 public function supports($resource, $type = null) 44 { 45 return 'glob' === $type; 46 } 47} 48