public function dispatch($module, $controller, array $params = []): Controller
    {
        $instance = new Controller($module, $controller, $params);

        Logger::info("app:dispatch:>>>: $module/$controller");
        $this->preDispatch($instance);

        Logger::info("app:dispatch:===: $module/$controller");
        $this->doDispatch($instance);

        Logger::info("app:dispatch:<<<: $module/$controller");
        $this->postDispatch($instance);

        return $instance;
    }
public function dispatch($module, $controller, array $params = []): Controller
    {
        $instance = new Controller($module, $controller, $params);

        Logger::info("app:dispatch:>>>: $module/$controller");
        $this->preDispatch($instance);

        Logger::info("app:dispatch:===: $module/$controller");
        $this->doDispatch($instance);

        Logger::info("app:dispatch:<<<: $module/$controller");
        $this->postDispatch($instance);

        return $instance;
    }
public function dispatch ( $ module , $ controller , array $ params = [ ] ) : Controller { $ instance = new Controller ( $ module , $ controller , $ params ) ; Logger :: info ( "app:dispatch:>>>: $module/$controller" ) ; $ this -> preDispatch ( $ instance ) ; Logger :: info ( "app:dispatch:===: $module/$controller" ) ; $ this -> doDispatch ( $ instance ) ; Logger :: info ( "app:dispatch:<<<: $module/$controller" ) ; $ this -> postDispatch ( $ instance ) ; return $ instance ; }
Dispatch controller with params

Call dispatch from any \Bluz\Package
Application::getInstance()->dispatch($module, $controller, array $params);

@param  string $module
@param  string $controller
@param  array  $params

@return Controller
@throws ComponentException
@throws CommonException
@throws ControllerException
@throws ForbiddenException
@throws NotAcceptableException
@throws NotAllowedException
Dispatch controller with params