コード例 #1
0
ファイル: DelegatingLoader.php プロジェクト: notbrain/symfony
 /**
  * Loads a resource.
  *
  * @param mixed $resource A resource
  */
 public function load($resource)
 {
     $loader = $this->resolver->resolve($resource);
     if (false === $loader) {
         throw new \InvalidArgumentException(sprintf('Unable to load the "%s" container resource.', is_string($resource) ? $resource : (is_object($resource) ? get_class($resource) : 'RESOURCE')));
     }
     return $loader->load($resource);
 }
コード例 #2
0
ファイル: Router.php プロジェクト: bankiru/rpc-server-bundle
 /**
  * Router constructor.
  *
  * @param LoaderResolverInterface $resolver
  * @param array                   $resources
  * @param MethodCollection|null   $collection
  *
  * @param array                   $context
  */
 public function __construct(LoaderResolverInterface $resolver, array $resources = [], MethodCollection $collection = null, array $context = [])
 {
     $this->collection = $collection;
     if (null === $this->collection) {
         $this->collection = new MethodCollection();
     }
     foreach ($resources as $resource) {
         $loader = $resolver->resolve($resource);
         if (false === $loader) {
             throw new \RuntimeException(sprintf('Could not resolve loader for resource "%s"', $resource));
         }
         $this->collection->addCollection($loader->load($resource));
     }
     foreach ($context as $item) {
         $this->collection->addContext($item);
     }
 }