Router

class AeonDigital\EnGarde\Engine\Router
Roteador para as requisições Http de uma Aplicação.
Parent

AeonDigital\BObject

Implements

AeonDigital\EnGarde\Interfaces\Engine\iRouter

Properties

Methods

public AeonDigital\EnGarde\Engine\Router::__construct($serverConfig)
Inicia um Roteador.
Parameters
  • ‹ AeonDigital\EnGarde\Interfaces\Config\iServer › $serverConfig
    Objeto de configuração do servidor.

public AeonDigital\EnGarde\Engine\Router::isToProcessApplicationRoutes()
Deve verificar quando a aplicação possui alterações que envolvam a necessidade de efetuar
uma atualização nos dados das rotas.
Idealmente verificará se os controllers da aplicação possuem alguma alteração posterior
a data do último processamento, e, estando o sistema configurado para atualizar
automaticamente as rotas, deverá retornar true.

Também deve retornar true quando, por qualquer motivo definido na implementação, o
processamento anterior não existir ou for considerado como desatualizado.
Returns

‹ bool ›

public AeonDigital\EnGarde\Engine\Router::processApplicationRoutes()
Varre os arquivos de controllers da aplicação e efetua o processamento das mesmas.
Idealmente o resultado deve ser um arquivo de configuração contendo todos os dados necessários
para a execução de cada rota de forma individual.
Returns

‹ void ›

Throws

‹ RuntimeException ›
Caso algum erro ocorra no processo.

public AeonDigital\EnGarde\Engine\Router::selectTargetRawRoute($targetRoute)
Identifica se a rota passada corresponde a alguma das rotas configuradas para a
aplicação e retorna um array associativo contendo todos os dados correspondentes a mesma.
Em caso de falha na identificação da rota será retornado null.
Parameters
  • ‹ string › $targetRoute
    Porção relativa da URI que está sendo executada. É necessário constar na rota, como sua primeira parte, o nome da aplicação que está sendo executada. Não deve constar quaisquer parametros querystring ou fragment.

Returns

‹ ?array ›