示例#1
0
 public function controller()
 {
     try {
         return parent::controller();
     } catch (ControllerException $cExc) {
         $flow = new \RedirectFlow(Registry::get('bootstrap')->config()->get('app.sisbio.redirectflow.target'));
         # o controle se pode ou nao enviar eh feito no
         # proprio componente RedirectFlow
         $flow->forward();
     }
 }
示例#2
0
 /**
  * autoload de arquivo de constantes
  * este metodo, com base na requisicao (bootstrap->request()), carrega o arquivo de constante do modulo ativado
  *
  * @throws br\gov\sial\core\exception\SIALException
  * */
 public function requestConstantAutoload()
 {
     # recupera o namespace da app
     # observer que para o correto funcionamento eh necesasrio que esta propriedade
     # seja configurada em application/config/config.ini
     $namespace = substr($this->_bootstrap->config('app.namespace'), 1);
     $message = 'É necessário informar o namespace da aplicação em config.ini::app.namespaces ';
     SIALException::throwsExceptionIfParamIsNull(!empty($namespace), $message);
     # constantes gerais de todos os sistemas que deve esta sob a pasta \br\gov\icmbio\[systemName]\application
     $loadConstants['sys'] = $namespace;
     # constantes geral do sistema carregado: \br\gov\icmbio\[systemName]\application\subsystem
     $loadConstants['app'] = $loadConstants['sys'] . self::NAMESPACE_SEPARATOR . $this->_bootstrap->getModule();
     # constante do modulo do sistema selecionado \br\gov\icmbio\[systemName]\application\subsystem\module
     $loadConstants['mdl'] = $loadConstants['app'] . self::NAMESPACE_SEPARATOR . $this->_bootstrap->getFuncionality();
     foreach ($loadConstants as $key => $value) {
         $assert = 'mdl' == $key;
         $this->loadModuleConstant($value, $assert);
     }
 }