FIX and UPDATE: Adjust some lines and implementing Container DI.

This commit is contained in:
lukibeg 2025-10-22 18:17:12 -03:00
parent 53ca033085
commit d7133daa31
1 changed files with 6 additions and 2 deletions

View File

@ -4,6 +4,8 @@ namespace Core;
require_once '../app/api/ReportController.php'; require_once '../app/api/ReportController.php';
use Psr\Container\ContainerInterface;
use DI\Container;
use Nyholm\Psr7\Response; use Nyholm\Psr7\Response;
use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Message\ServerRequestInterface;
@ -12,8 +14,10 @@ use Nyholm\Psr7Server\ServerRequestCreatorInterface;
class Router class Router
{ {
protected $routes = []; protected $routes = [];
public function __construct() {} public function __construct(protected ContainerInterface $container ) {}
public function setRoute($method, $uri, $action) public function setRoute($method, $uri, $action)
{ {
@ -71,7 +75,7 @@ class Router
return new Response(500, ['Content-Type' => 'application/json', 'Accept' => 'application/json'], json_encode(['error' => 'Recurso não foi encontrado'])); return new Response(500, ['Content-Type' => 'application/json', 'Accept' => 'application/json'], json_encode(['error' => 'Recurso não foi encontrado']));
} }
$controllerInstance = new $controllerClass(); $controllerInstance = $this->container->get($controllerClass);
if (empty($queryParams)) { if (empty($queryParams)) {
return new Response(403, ['Content-Type' => 'application/json', 'Accept' => 'application/json'], json_encode(['error' => 'O parâmetro de data não foi enviado.'])); return new Response(403, ['Content-Type' => 'application/json', 'Accept' => 'application/json'], json_encode(['error' => 'O parâmetro de data não foi enviado.']));