public function handle( \AltoRouter $router, \PowerOn\Network\Request $request ) {
        $match = $router->match($request->path);
        if ( $match ) {
            $target = explode('#', $match['target']);
            $this->controller = $target[0];
            $this->action = key_exists(1, $target) ? $target[1] : 'index';
        } else {
            $url = $request->urlToArray();
            $controller = array_shift($url);
            $action = array_shift($url);
            $this->controller = $controller ? $controller : 'index';
            $this->action = $action ? $action : 'index';
        }
        
        $handler = $this->loadController();
        
        if ( !$handler || !method_exists($handler, $this->action) ) {
            throw new NotFoundException('El sitio al que intenta ingresar no existe.');
        }
        
        return $handler;
    }