protected function interpretError() {
        switch (get_class($this->exception)) {
            case UserErrorException::class:
            case tao_models_classes_MissingRequestParameterException::class:
            case common_exception_MissingParameter::class:
            case common_exception_BadRequest::class:
                $this->returnHttpCode = 400;
                $this->responseClassName = 'MainResponse';
            break;
            case 'tao_models_classes_AccessDeniedException':
            case 'ResolverException':
                $this->returnHttpCode    = 403;
                $this->responseClassName = 'RedirectResponse';
            break;
            case 'tao_models_classes_UserException':
                $this->returnHttpCode    = 403;
                $this->responseClassName = 'MainResponse';
            break;
            case 'ActionEnforcingException':
            case 'tao_models_classes_FileNotFoundException':
                $this->returnHttpCode    = 404;
                $this->responseClassName = 'MainResponse';
            break;
            default :
                $this->responseClassName = 'MainResponse';
                $this->returnHttpCode    = 500;
            break;
            
        }
        return $this;
    }