382,11 → 382,12 |
* database contents. |
*/ |
private function get() { |
$retour = ''; |
if ($this->service != null) { |
$Service = new $this->service(self::$config); |
if (method_exists($Service, self::METHODE_GET)) { |
$methodeGet = self::METHODE_GET; |
$Service->$methodeGet($this->ressources, $this->parametres); |
$retour = $Service->$methodeGet($this->ressources, $this->parametres); |
} else { |
self::envoyerEnteteStatutHttp(self::HTTP_CODE_RESSOURCE_INTROUVABLE); |
$e = "Le service '{$this->service}' ne contient pas la méthode '".self::METHODE_GET."' nécessaire ". |
394,6 → 395,7 |
self::ajouterMessage($e); |
} |
} |
return $retour; |
} |
|
private function post() { |
429,6 → 431,7 |
} |
|
private function put() { |
$retour = ''; |
$paires = $this->parserDonneesRequete(); |
if (count($paires) != 0) { |
if ($this->service != null) { |
435,8 → 438,8 |
$Service = new $this->service(self::$config); |
if (method_exists($Service, self::METHODE_PUT)) { |
$methodePut = self::METHODE_PUT; |
$info = $Service->$methodePut($this->ressources, $paires); |
if ($info === true) { |
$retour = $Service->$methodePut($this->ressources, $paires); |
if ($retour !== false) { |
$this->envoyerEnteteStatutHttp(self::HTTP_CODE_CREATION_OK); |
} |
} else { |
451,6 → 454,7 |
$e = "Il est nécessaire de fournir du contenu dans le corps de la requête pour créer une nouvelle ressource."; |
self::ajouterMessage($e); |
} |
return $retour; |
} |
|
private function delete() { |
520,11 → 524,16 |
/** |
* Termine l'accès au serveur après envoir envoyer les messages. |
*/ |
private static function cloreAccesServeur() { |
private static function cloreAccesServeur($retour) { |
// Gestion des exceptions et erreurs générées par les services |
self::gererErreurs(); |
$retour .= self::gererErreurs(); |
|
// Envoie des messages d'erreur et d'avertissement du serveur |
self::envoyerMessages(); |
$retour .= self::envoyerMessages(); |
|
// Envoie sur la sortie standard le contenu de la réponse HTTP |
print $retour; |
|
// Nous terminons le script |
exit(0); |
} |
543,7 → 552,9 |
* - Autre valeur : les messages sont formatés puis retournés par la fonction de débogage (à vous de les afficher). |
*/ |
public static function gererErreurs() { |
$retour = ''; |
if (self::$debogageActivation && GestionnaireException::getExceptionsNbre() > 0) { |
|
$exceptionsTriees = GestionnaireException::getExceptionsTriees(); |
reset($exceptionsTriees); |
$debogageSeulement = true; |
556,9 → 567,9 |
foreach ($exceptionsTriees as $exceptions) { |
foreach ($exceptions as $e) { |
if ($debogageSeulement && self::$debogageMode == Debug::MODE_ENTETE_HTTP) { |
$exceptionsFormatees[] = GestionnaireException::formaterExceptionTxt($e); |
$exceptionsFormatees[] = GestionnaireException::formaterExceptionDebug($e); |
} else { |
echo GestionnaireException::formaterExceptionXhtml($e); |
$retour = GestionnaireException::formaterExceptionXhtml($e); |
} |
} |
} |
567,6 → 578,7 |
header('X_REST_DEBOGAGE_MESSAGES: '.json_encode($exceptionsFormatees)); |
} |
} |
return $retour; |
} |
|
|
588,7 → 600,7 |
private static function envoyerMessages() { |
if (count(self::$messages) > 0) { |
header("Content-Type: text/plain; charset=utf-8"); |
print implode("\n", self::$messages); |
return implode("\n", self::$messages); |
} |
} |
} |