/[openfoncier]/trunk/services/REST/maintenance.php
ViewVC logotype

Annotation of /trunk/services/REST/maintenance.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 733 - (hide annotations)
Fri Nov 16 17:55:28 2012 UTC (12 years, 2 months ago) by fmichon
File size: 2682 byte(s)
Indentation, Optimisation et Commentaires du code.

1 mlimic 515 <?php
2 fmichon 715 /**
3     * Ce fichier permet de déclarer la classe maintenance, ressource exposée à
4     * travers l'interface REST qui hérite de la classe de base Services.
5 mlimic 523 *
6 fmichon 715 * @package openfoncier
7     * @version SVN : $Id$
8 mlimic 523 */
9    
10 fmichon 715 // Inclusion de la classe de base Services
11     include_once('./REST/services.php');
12    
13     // Inclusion de la classe maintenanceManager qui effectue le traitement métier
14 mlimic 515 include_once('./metier/maintenancemanager.php');
15    
16 fmichon 715 /*
17     * Cette classe définie la ressource 'maintenance' qui permet d'exposer des
18     * traitements qui ont vocation à être déclenché de manière automatique ou par
19     * une application externe. Par exemple, un cron permet chaque soir d'exécuter
20     * la synchronisation des utilisateurs de l'application avec l'annuaire LDAP.
21     *
22     * @todo XXX Finir la synchronisation du module 'user' et ajouter le support
23     * pour la synchronisation des modules additionnels
24     */
25 mlimic 515 class maintenance extends Services {
26 fmichon 715
27     /**
28     * Constructeur
29 mlimic 523 */
30 mlimic 526 public function __construct() {
31 fmichon 715
32     // Appel du constructeur parent
33 mlimic 515 parent::__construct();
34 fmichon 715
35     // Initialisation de l'attribut contents avec les clés qui doivent être
36     // récupérées dans les données JSON reçues
37 mlimic 515 $this->contents['module'] = '';
38     $this->contents['data'] = '';
39 fmichon 715
40 mlimic 515 }
41 fmichon 715
42     /**
43     * Destructeur
44 mlimic 523 */
45 mlimic 526 public function __destruct() {
46 fmichon 715
47     // Appel du destructeur parent
48 mlimic 515 parent::__destruct();
49 fmichon 715
50 mlimic 515 }
51 fmichon 715
52     /**
53     * Cette méthode permet de définir le traitement du POST sur une requête
54     * REST. Elle vérifie la validité du format des données reçues, effectue le
55     * traitement et retourne le résultat.
56     *
57     * @param mixed $request_data Les données JSON reçues (voir @uses)
58 mlimic 523 *
59 fmichon 715 * @todo XXX Vérifier pourquoi la méthode sendReply n'est pas utilisée dans
60     * la gestion du retour en fonction du résultat
61 mlimic 523 */
62 mlimic 526 public function post($request_data) {
63 fmichon 715
64     // Vérification de la validité du format des données de la requête REST
65     // Si le format n'est pas correct, on retourne un code 400
66 mlimic 515 if (!$this->requestValid($request_data)) {
67 fmichon 715 return $this->sendHttpCode(400, "Le format des données reçues n'est pas correct.");
68 mlimic 515 }
69 fmichon 715
70     // Instanciation de la classe qui s'occupe du traitement métier
71 mlimic 515 $this->metier_manager = new MaintenanceManager();
72 fmichon 715
73     // Exécution du traitement
74     $ret = $this->metier_manager->performMaintenance($request_data['module'], $request_data['data']);
75 mlimic 541 $msg = $this->metier_manager->getMessage();
76 fmichon 715
77     // Gestion du retour en fonction du résultat
78 fmichon 733 return $this->sendReply($ret, $msg);
79 fmichon 715
80 mlimic 515 }
81 fmichon 715
82 mlimic 515 }
83    
84     ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26