/**
* @param mixed $resource
* @param null $type
* @return \Symfony\Component\Routing\RouteCollection
* @throws \RuntimeException
*/
public function load($resource, $type = null)
{
$routes = new RouteCollection();
/*
* For each core bunle then for each module
*/
// CoreBundle
$loader = $this->resolver->resolve('@EtuCoreBundle/Api/Resource/', 'annotation');
if ($loader) {
$routes->addCollection($loader->load('@EtuCoreBundle/Api/Resource/', 'annotation'));
}
// UserBundle
$loader = $this->resolver->resolve('@EtuUserBundle/Api/Resource/', 'annotation');
if ($loader) {
$routes->addCollection($loader->load('@EtuUserBundle/Api/Resource/', 'annotation'));
}
/** @var $module Module */
foreach ($this->kernel->getModulesDefinitions() as $module) {
$routing = $module->getApiRouting();
$loader = $this->resolver->resolve($routing['resource'], $routing['type']);
if ($loader) {
$routes->addCollection($loader->load($routing['resource'], $routing['type']));
}
}
return $routes;
}