public function packageRoutesCallback($filenameAndPath)
{
// The routes from the innermost context should be added FIRST, such that
// they take precedence over more generic contexts
$packageSubContextRoutes = [['name' => 'PackageSubContextRoute1', 'uriPattern' => 'packageSubContextRoute1'], ['name' => 'PackageSubContextRoute2', 'uriPattern' => 'packageSubContextRoute2']];
$packageContextRoutes = [['name' => 'PackageContextRoute1', 'uriPattern' => 'packageContextRoute1'], ['name' => 'PackageContextRoute2', 'uriPattern' => 'packageContextRoute2']];
$packageRoutes = [['name' => 'PackageRoute1', 'uriPattern' => 'packageRoute1'], ['name' => 'PackageRoute2', 'uriPattern' => 'packageRoute2']];
$globalSubContextRoutes = [['name' => 'GlobalSubContextRoute1', 'uriPattern' => 'globalSubContextRoute1'], ['name' => 'GlobalSubContextRoute2', 'uriPattern' => 'globalSubContextRoute2']];
$globalContextRoutes = [['name' => 'GlobalContextRoute1', 'uriPattern' => 'globalContextRoute1/<PackageSubroutes>', 'subRoutes' => ['PackageSubroutes' => ['package' => 'Neos.Flow']]], ['name' => 'GlobalContextRoute2', 'uriPattern' => 'globalContextRoute2']];
$globalRoutes = [['name' => 'GlobalRoute1', 'uriPattern' => 'globalRoute1'], ['name' => 'GlobalRoute2', 'uriPattern' => 'globalRoute2']];
switch ($filenameAndPath) {
case 'Flow/Configuration/Routes':
return $packageRoutes;
case 'Flow/Configuration/Testing/Routes':
return $packageContextRoutes;
case 'Flow/Configuration/Testing/System1/Routes':
return $packageSubContextRoutes;
case FLOW_PATH_CONFIGURATION . 'Routes':
return $globalRoutes;
case FLOW_PATH_CONFIGURATION . 'Testing/Routes':
return $globalContextRoutes;
case FLOW_PATH_CONFIGURATION . 'Testing/System1/Routes':
return $globalSubContextRoutes;
default:
throw new \Exception('Unexpected filename: ' . $filenameAndPath);
}
}