function perform($unconsumed) {

    list($action, $args, $format) = $this->extract_action_and_args($unconsumed);

    # set format
    $this->format = isset($format) ? $format : 'html';

    # call before filter
    $before_filter_result = $this->before_filter($action, $args);

    # send action to controller
    # TODO (mlunzena) shouldn't the after filter be triggered too?
    if (!(FALSE === $before_filter_result || $this->performed)) {

      $mapped_action = $this->map_action($action);

      # is action callable?
      if (method_exists($this, $mapped_action)) {
        call_user_func_array(array(&$this, $mapped_action), $args);
      }
      else {
        $this->does_not_understand($action, $args);
      }

      if (!$this->performed) {
        $this->render_action($action);
      }

      # call after filter
      $this->after_filter($action, $args);
    }

    return $this->response;
  }
function perform($unconsumed) {

    list($action, $args, $format) = $this->extract_action_and_args($unconsumed);

    # set format
    $this->format = isset($format) ? $format : 'html';

    # call before filter
    $before_filter_result = $this->before_filter($action, $args);

    # send action to controller
    # TODO (mlunzena) shouldn't the after filter be triggered too?
    if (!(FALSE === $before_filter_result || $this->performed)) {

      $mapped_action = $this->map_action($action);

      # is action callable?
      if (method_exists($this, $mapped_action)) {
        call_user_func_array(array(&$this, $mapped_action), $args);
      }
      else {
        $this->does_not_understand($action, $args);
      }

      if (!$this->performed) {
        $this->render_action($action);
      }

      # call after filter
      $this->after_filter($action, $args);
    }

    return $this->response;
  }
function perform ( $ unconsumed ) { list ( $ action , $ args , $ format ) = $ this -> extract_action_and_args ( $ unconsumed ) ; # set format $ this -> format = isset ( $ format ) ? $ format : 'html' ; # call before filter $ before_filter_result = $ this -> before_filter ( $ action , $ args ) ; # send action to controller # TODO (mlunzena) shouldn't the after filter be triggered too? if ( ! ( FALSE === $ before_filter_result || $ this -> performed ) ) { $ mapped_action = $ this -> map_action ( $ action ) ; # is action callable? if ( method_exists ( $ this , $ mapped_action ) ) { call_user_func_array ( array ( & $ this , $ mapped_action ) , $ args ) ; } else { $ this -> does_not_understand ( $ action , $ args ) ; } if ( ! $ this -> performed ) { $ this -> render_action ( $ action ) ; } # call after filter $ this -> after_filter ( $ action , $ args ) ; } return $ this -> response ; }
This method extracts an action string and further arguments from it's
parameter. The action string is mapped to a method being called afterwards
using the said arguments. That method is called and a response object is
generated, populated and sent back to the dispatcher.

@param type <description>

@return type <description>
This method extracts an action string and further arguments from it s parameter . The action string is mapped to a method being called afterwards using the said arguments . That method is called and a response object is generated populated and sent back to the dispatcher .