35 lines
1.1 KiB
PHP
35 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace Lean\Console\Controller;
|
|
|
|
use League\Route\Router;
|
|
use Lean\Routing;
|
|
use Psr\Http\Message\{ ResponseInterface, ServerRequestInterface };
|
|
|
|
use Notes\Tell\Attribute\Language, Notes\Route\Attribute\Method\Route;
|
|
|
|
use \Lean\Console\Lib;
|
|
|
|
use Picea\Extension\UrlExtension;
|
|
|
|
class Request extends Console {
|
|
use Lib\ConsoleControllerTrait;
|
|
|
|
#[Route(route: "/request/routes", name: "lean.console:request.route")]
|
|
public function routes(ServerRequestInterface $request, array $arguments) : ResponseInterface
|
|
{
|
|
$routing = $this->container->has(Routing::class) ? $this->container->get(Routing::class) : false;
|
|
|
|
if ( $routing === false ) {
|
|
throw new \Exception("Lean's routing library do not seems to be integrated into your container definition...");
|
|
}
|
|
|
|
$routes = $routing->fetchRoutesAttributes();
|
|
|
|
uasort($routes, function($a, $b) {
|
|
return ( $a->class . $a->name ) <=> ( $b->class . $b->name );
|
|
});
|
|
|
|
return $this->renderView("lean-console/page/request/route", get_defined_vars());
|
|
}
|
|
} |