Ignore:
Timestamp:
05/11/12 10:38:02 (12 years ago)
Author:
niltonneto
Message:

Ticket #2507 - Refatorado e centralizado tratamento de Erros.

Location:
sandbox/webservice/api/rest
Files:
1 added
8 edited

Legend:

Unmodified
Added
Removed
  • sandbox/webservice/api/rest/catalog/ContactsResource.php

    r6148 r6165  
    2424                                                return $this->getGlobalContacts($search, $this->getParam('contactID')); 
    2525                                        else{ 
    26                                                 $error = Errors::get(Errors::CATALOG_MIN_ARGUMENT_SEARCH, $this-> getMinArgumentSearch());                                               
    27                                                 throw new ResponseException($error['message'], $error['code']); 
     26                                                Errors::runException("CATALOG_MIN_ARGUMENT_SEARCH", $this-> getMinArgumentSearch()); 
    2827                                        } 
    2928                                } 
  • sandbox/webservice/api/rest/core/LoginResource.php

    r6149 r6165  
    3535                else 
    3636                { 
    37                         throw new ResponseException("",$GLOBALS['phpgw']->session->cd_reason); 
     37                        Errors::runException($GLOBALS['phpgw']->session->cd_reason); 
    3838                } 
    3939                return $this->getResponse(); 
  • sandbox/webservice/api/rest/dispatch.php

    r6155 r6165  
    22 
    33// load libraries 
    4 require_once __DIR__.'/../library/tonic/lib/tonic.php';  
    5 require_once(__DIR__."/../Errors.php"); 
     4require_once(__DIR__.'/../library/tonic/lib/tonic.php');  
     5require_once(__DIR__.'/../library/utils/Errors.php'); 
    66 
    77// load adapters 
     
    5454                        break; 
    5555                default: 
    56                         $response = Errors::getResponse($request, $e); 
     56                         
     57                        $response = new Response($request); 
     58                        $response->code = Response::OK; 
     59                        $response->addHeader('content-type', 'application/json'); 
     60                        if($request->id) 
     61                                $body['id']     = $request->id; 
     62                         
     63                        $body['error'] = array("code" => "".$e->getCode(), "message" => $e->getMessage()); 
     64                        $response->body = json_encode($body); 
    5765        } 
    5866} 
  • sandbox/webservice/api/rest/mail/AddFolderResource.php

    r6155 r6165  
    1313 
    1414                        if(empty($new_name) || preg_match('/[\/\\\!\@\#\$\%\&\*\(\)]/', $new_name)) 
    15                                 throw new ResponseException("",Errors::MAIL_INVALID_NEW_FOLDER_NAME); 
     15                                Errors::runException("MAIL_INVALID_NEW_FOLDER_NAME"); 
    1616 
    1717                        $new_id = $parent_id . $this->getImap()->imap_delimiter . $new_name; 
     
    2121                        $result = $this->getImap()->create_mailbox($params); 
    2222                        if($result != 'Ok') 
    23                                 throw new ResponseException("",Errors::MAIL_FOLDER_NOT_ADDED); 
     23                                Errors::runException("MAIL_FOLDER_NOT_ADDED"); 
    2424                } 
    2525 
  • sandbox/webservice/api/rest/mail/CleanTrashResource.php

    r6148 r6165  
    1010                        $params['clean_folder'] = 'imapDefaultTrashFolder'; 
    1111                        if(!$this -> getImap() -> empty_folder($params)) 
    12                                 throw new ResponseException("",Errors::MAIL_TRASH_NOT_CLEANED); 
     12                                Errors::runException("MAIL_TRASH_NOT_CLEANED"); 
    1313                } 
    1414 
  • sandbox/webservice/api/rest/mail/DelFolderResource.php

    r6155 r6165  
    1111 
    1212                        if(!$this->getImap()->folder_exists($folder_id)) 
    13                                 throw new ResponseException("",Errors::MAIL_INVALID_FOLDER); 
     13                                Errors::runException("MAIL_INVALID_FOLDER"); 
    1414 
    1515                        $default_folders = array_keys($this->defaultFolders); 
    1616                        if(in_array($folder_id, $default_folders)) 
    17                                 throw new ResponseException("",Errors::MAIL_CANNOT_DEL_DEFAULT_FOLDER); 
     17                                Errors::runException("MAIL_CANNOT_DEL_DEFAULT_FOLDER"); 
    1818 
    1919                        $personal_folders = $this->getImap()->get_folders_list(array('noSharedFolders' => true, 'folderType' => 'personal')); 
     
    2323                        foreach($personal_folders AS $personal_folder){ 
    2424                                if($personal_folder['folder_id'] == $folder_id && $personal_folder['folder_hasChildren']) 
    25                                         throw new ResponseException("",Errors::MAIL_FOLDER_NOT_EMPTY); 
     25                                        Errors::runException("MAIL_FOLDER_NOT_EMPTY"); 
    2626                        } 
    2727 
    2828                        if($this->getImap()->get_num_msgs(array('folder' => $folder_id)) > 0) 
    29                                 throw new ResponseException("",Errors::MAIL_FOLDER_NOT_EMPTY); 
     29                                Errors::runException("MAIL_FOLDER_NOT_EMPTY"); 
    3030 
    3131                        $result = $this->getImap()->delete_mailbox($params); 
    3232                        if($result != 'Ok') 
    33                                 throw new ResponseException("",Errors::MAIL_FOLDER_NOT_DELETED); 
     33                                Errors::runException("MAIL_FOLDER_NOT_DELETED"); 
    3434                } 
    3535 
  • sandbox/webservice/api/rest/mail/RenameFolderResource.php

    r6155 r6165  
    1212 
    1313                        if(!$this->getImap()->folder_exists($old_id)) 
    14                                 throw new ResponseException("",Errors::MAIL_INVALID_OLD_FOLDER); 
     14                                Errors::runException("MAIL_INVALID_OLD_FOLDER"); 
    1515 
    1616                        $default_folders = array_keys($this->defaultFolders); 
    1717                        if(in_array($old_id, $default_folders)) 
    18                                 throw new ResponseException("",Errors::MAIL_INVALID_OLD_FOLDER); 
     18                                Errors::runException("MAIL_INVALID_OLD_FOLDER"); 
    1919 
    2020                        if(empty($new_name) || preg_match('/[\/\\\!\@\#\$\%\&\*\(\)]/', $new_name)) 
    21                                 throw new ResponseException("",Errors::MAIL_INVALID_NEW_FOLDER_NAME); 
     21                                Errors::runException("MAIL_INVALID_NEW_FOLDER_NAME"); 
    2222 
    2323                        $old_id_arr = explode($this->getImap()->imap_delimiter, $old_id); 
     
    3030                        $result = $this->getImap()->ren_mailbox($params); 
    3131                        if($result != 'Ok') 
    32                                 throw new ResponseException("",Errors::MAIL_FOLDER_NOT_RENAMED); 
     32                                Errors::runException("MAIL_FOLDER_NOT_RENAMED"); 
    3333                } 
    3434 
  • sandbox/webservice/api/rest/mail/SendSupportFeedbackResource.php

    r6148 r6165  
    2929 
    3030                        if (!$returncode || !(is_array($returncode) && $returncode['success'] == true)) 
    31                                 throw new ResponseException("",Errors::MAIL_NOT_SENT); 
     31                                Errors::runException("MAIL_NOT_SENT"); 
    3232                } 
    3333 
Note: See TracChangeset for help on using the changeset viewer.