Ignore:
Timestamp:
04/27/12 15:18:00 (12 years ago)
Author:
niltonneto
Message:

Ticket #2507 - Modificada implementação para tratamento de erros por Exception.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sandbox/webservice/api/rest/core/Errors.php

    r6019 r6061  
    5858        ); 
    5959                 
    60         static public function get($code, $arg){                                 
    61                 $errors = self::$reservedErrors + self::$applicationErrors; 
     60        static public function set($code, $message){ 
     61                return array ("code" => $code, "message" => $message); 
     62        } 
     63 
     64        static public function get($code, $argument = false){ 
     65                $errors = self::$reservedErrors + self::$applicationErrors;              
    6266                $message = $errors[$code]; 
    63                 if($arg){ 
    64                         $message = str_replace("%1", $arg, $message); 
    65                 } 
    66                 if(!$message){ 
     67                if(!$message) 
    6768                        $message = $errors[self::E_UNKNOWN_ERROR]; 
    68                 } 
     69                if($argument) 
     70                        $message = str_replace("%1", $argument, $message);               
    6971                 
    70                 return array ("code" => $code, "message" => $message);                           
    71         }                        
     72                return array ("code" => $code, "message" => $message);  
     73        } 
     74         
     75        static public function getResponse($request, $responseException){                        
     76                        $response = new Response($request); 
     77                        $response->code = Response::OK; 
     78                        $response->addHeader('content-type', 'application/json'); 
     79                        if($request->id) 
     80                                $body['id']     = $request->id; 
     81                         
     82                        $code    = $responseException->getCode(); 
     83                        $error = Errors::get($code);                     
     84                        $message = ($responseException->getMessage() ? $responseException->getMessage() : $error['message']);                    
     85                        $body['error'] = array("code" => $code, "message" => $message);          
     86                        $response->body = json_encode($body); 
     87                        return $response; 
     88        } 
    7289                 
    7390} 
Note: See TracChangeset for help on using the changeset viewer.