Subversion Repositories Applications.framework

Compare Revisions

Ignore whitespace Rev 470 → Rev 471

/branches/v0.3-aleaume/framework/RestServeur.php
35,8 → 35,6
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
* @since 0.3
* @version $Id$
* @link /doc/framework/
*/
// TODO : gerer les retours : dans ce controleur : code retour et envoi ...
class RestServeur {
53,49 → 51,118
/** Nom de la méthode appelée dans un service pour éxécuter une requête de type PUT. */
const METHODE_PUT = 'ajouter';
 
/** Code HTTP 200 indiquant le succès de l'accès à un service web par la méthode GET.
/** Code HTTP 200 : OK
* Indiquant le succès de l'accès à un service web par la méthode GET.
* L'utiliser lors d'une requète de type GET (consulter) pour indiquer le succès de l'opération.
* Sera renvoyée par défaut par PHP. */
* Sera renvoyée par défaut par PHP.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1
*/
const HTTP_CODE_OK = '200';
 
/** Code HTTP 201 indiquant que l'accès à un service web est un succès et que la ressource a été créée ou modifié.
* L'utiliser lors d'une requète de type PUT (ajouter) ou POST (modifier) pour indiquer le succès de l'opération. */
/** Code HTTP 201 : Created
* Indiquant que l'accès à un service web est un succès et que la ressource a été créée ou modifié.
* L'utiliser lors d'une requète de type PUT (ajouter) ou POST (modifier) pour indiquer le succès de l'opération.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.2
*/
const HTTP_CODE_CREATION_OK = '201';
 
/** Code HTTP 204 indique que l'accès à un service web est un succès et qu'il n'y a pas de contenu à renvoyer.
/** Code HTTP 202 : Accepted
* Indiquant que la requête a été acceptée mais que son traitement n'est pas encore terminé.
* L'utiliser lors d'une requète de type PUT (ajouter) ou POST (modifier) pour indiquer que les données
* seront traitées ultérieurement.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.3
*/
const HTTP_CODE_ACCEPTE_OK = '202';
 
/** Code HTTP 204 : No Content
* Indique que l'accès à un service web est un succès et qu'il n'y a pas de contenu à renvoyer.
* L'utiliser lors d'une requète de type DELETE (supprimer) pour indiquer le succès de l'opération si aucun
* contenu (status) ne doit être renvoyé, sinon utiliser 200 OK. */
* contenu (status) ne doit être renvoyé, sinon utiliser 200 OK.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.5
*/
const HTTP_CODE_SUPPRESSION_OK = '204';
 
/** Code HTTP 400 indique que les paramètres envoyés au service contiennent des erreurs.
/** Code HTTP 400 : Bad Request
* Indique que les paramètres envoyés au service contiennent des erreurs.
* L'utiliser pour indiquer l'échec de l'accès au service. La réponse pourra contenir un message expliquant la source
* de l'erreur. */
* de l'erreur.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1
*/
const HTTP_CODE_MAUVAISE_REQUETE = '400';
 
/** Code HTTP 401 indiquant que l'accès à un service web est refusé car l'authentification (obligatoire) a échoué pour
* accéder à la ressource. */
/** Code HTTP 401 : Unauthorized
* Indiquant que l'accès à un service web est refusé car l'authentification (obligatoire) a échoué pour
* accéder à la ressource.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.2
*/
const HTTP_CODE_ACCES_NON_AUTORISE = '401';
 
/** Code HTTP 404 indiquant que la ressource indiquée par l'url est introuvable. */
/** Code HTTP 403 : Forbidden
* Indiquant que le service a compris la requête mais refuse de la réaliser.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4
*/
const HTTP_CODE_ACCES_INTERDIT = '403';
 
/** Code HTTP 404 : Not Found
* Indiquant que la ressource indiquée par l'url est introuvable.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5
*/
const HTTP_CODE_RESSOURCE_INTROUVABLE = '404';
 
/** Code HTTP 405 indiquant soit :
/** Code HTTP 405 : Method Not Allowed
* Indique soit :
* - que le service web ne possède pas d'accès la ressource correspondant à la méthode HTTP employée.
* - que la méthode HTTP enployée n'est pas en accord avec la ressource indiquée par l'url. */
* - que la méthode HTTP enployée n'est pas en accord avec la ressource indiquée par l'url.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.6
*/
const HTTP_CODE_METHODE_NON_AUTORISE = '405';
 
/** Code d'erreur HTTP 409 indiquant qu'un conflit est survenu vis à vis de la ressource.
/** Code HTTP 409 : Conflict
* Indique qu'un conflit est survenu vis à vis de la ressource.
* Par exemple, essayer de créer deux fois la même ressource ou bien tenter de modifier une ressource qui a été modifiée par
* ailleurs. */
* ailleurs.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.10
*/
const HTTP_CODE_CONFLIT = '409';
 
/** Code HTTP 411 indiquant que des paramètres passés dans le contenu de la requête sont nécessaires au service. */
/** Code HTTP 411 : Length Required
* Indique que des paramètres passés dans le contenu de la requête sont nécessaires au service.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.12
*/
const HTTP_CODE_CONTENU_REQUIS = '411';
 
/** Code d'erreur HTTP 500 Internal Server Error.
* L'utiliser quand le serveur ou un service soulève une erreur ou une exception. */
/** Code HTTP 412 : Precondition Failed
* Indique que des entêtes envoyés au serveur sont erronnés.
* À utiliser quand un service web reçoit de mauvais entêtes, paramètres et/ou ressources.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.13
*/
const HTTP_CODE_ECHEC_CONDITION = '411';
 
/** Code HTTP 415 : Unsupported Media Type
* Indique que le type de média envoyé au serveur n'est pas accepté par la ressource.
* À utiliser quand un service web reçoit un mauvais type de contenu.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.16
*/
const HTTP_CODE_CONTENU_NON_SUPPORTE = '415';
 
/** Code HTTP 500 : Internal Server Error.
* L'utiliser quand le serveur ou un service soulève une erreur ou une exception.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1
*/
const HTTP_CODE_ERREUR = '500';
 
/** Code HTTP 501 : Not Implemented
* Indique que le web service ne supporte pas la fonctionnalité demandée.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.2
*/
const HTTP_NON_IMPLEMENTE= '501';
 
/** Code HTTP 503 : Service Unavailable
* L'utiliser quand le web service est momentanément indisponible.
* @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.4
*/
const HTTP_CODE_SERVICE_INDISPONIBLE = '503';
 
/** Motif de l'epression régulière vérfiant la version de l'API. */
const MOTIF_API_VERSION = '/^[0-9]+(?:[.][0-9]+)*$/';
 
665,5 → 732,4
return implode("\n", self::$messages);
}
}
}
?>
}