/** * Inicia a execucao de uma nova requisicao HTTP ao aplicativo * @return Ibe_Request */ public static function dispatch($init_session = FALSE) { if ($init_session) { self::initSession(); } $ctx = Ibe_Context::getInstance(self::$_module, self::$_controller, self::$_action, self::$_is_https); $request = new self(); $action = Ibe_Load::action(); $action->setContext($ctx); $action->preAction($request); $template = $action->execute($request); $action->posAction($request); $view_app = $action->getViewApplication(); $view_mod = $action->getViewModule(); $view_ctr = $action->getViewController(); $view_act = $action->getViewAction(); if ($template == Ibe_View::JSON) { $view_act->response = $action->getResponse(); } $view = new Ibe_View($view_app, $view_mod, $view_ctr, $view_act); $view->show($template); }