code: public function run()
      {
          $event = new BeforeControllerRunEvent();
  
          $this->dispatcher->fire( Events::EVENT_BEFORE_CONTROLLER_RUN, $event );
  
          $action = $this->action->getName();
  
          if ( $this->action->hasParams() )
          {
              call_user_func_array( [
                                        $this,
                                        $action
                                    ],
                                    $this->action->getParams()
              );
          }
          else
          {
              $this->$action();
          }
  
          $event = new AfterControllerRunEvent();
  
          $this->dispatcher->fire( Events::EVENT_AFTER_CONTROLLER_RUN, $event );
      }
docs: Runs the controller action.