/** * retorna o controller * * toda requisica aponta para um controller, seja por meio da url (http://www.com.br/module/controller/action), * seja pela configuracao padrao do config.ini, este metodo retona o controller que por padrao sera executado * * @return ControllerAbstract * */ public function controller() { try { $ctrl = $this->_bootstrap->controller(); if (FALSE === $ctrl instanceof ControllerAbstract) { throw new ControllerException(); } return $ctrl->applicationRegister($this); } catch (ControllerException $ctre) { # inicializa processo de tratamento de error $cErr = new ErrorController($ctre); $cErr->getView()->set('exception', $ctre); # @todo registra de log interno do framework # inicializa view de error echo $cErr->errorAction(); die; } catch (\Exception $exc) { throw new ControllerException($exc->getMessage(), $exc->getCode()); } }
/** * metodo responsavel por iniciar a execucao da applicacao * * @access public * @codeCoverageIgnoreStart * */ public function run() { try { $ctrl = $this->controller(); echo $ctrl->{$action}(); } catch (ControllerException $ctre) { # inicializa processo de tratamento de error $ce = new ErrorController($ctre); $ce->getView()->set('exception', $ctre); # @todo registra de log interno do framework # inicializa view de error echo $ce->errorAction(); } catch (\Exception $e) { # @todo remover esta saida de dump e trata-la adequadamente dump($e); } }