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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 715 by fmichon, Fri Nov 16 10:13:41 2012 UTC revision 777 by fmichon, Tue Nov 20 16:09:41 2012 UTC
# Line 18  include_once('./metier/maintenancemanage Line 18  include_once('./metier/maintenancemanage
18   * traitements qui ont vocation à être déclenché de manière automatique ou par   * 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   * 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.   * la synchronisation des utilisateurs de l'application avec l'annuaire LDAP.
  *  
  * @todo XXX Finir la synchronisation du module 'user' et ajouter le support  
  * pour la synchronisation des modules additionnels  
21   */   */
22  class maintenance extends Services {  class maintenance extends Services {
23    
24      /**      /**
      * Constructeur  
      */  
     public function __construct() {  
   
         // Appel du constructeur parent  
         parent::__construct();  
   
         // Initialisation de l'attribut contents avec les clés qui doivent être  
         // récupérées dans les données JSON reçues  
         $this->contents['module'] = '';  
         $this->contents['data'] = '';  
   
     }  
   
     /**  
      * Destructeur  
      */  
     public function __destruct() {  
   
         // Appel du destructeur parent  
         parent::__destruct();  
   
     }  
   
     /**  
25       * Cette méthode permet de définir le traitement du POST sur une requête       * Cette méthode permet de définir le traitement du POST sur une requête
26       * REST. Elle vérifie la validité du format des données reçues, effectue le       * REST. Elle vérifie la validité du format des données reçues, effectue le
27       * traitement et retourne le résultat.       * traitement et retourne le résultat.
28       *       *
29       * @param mixed $request_data Les données JSON reçues (voir @uses)       * @param mixed $request_data Les données JSON reçues (voir @uses)
      *  
      * @todo XXX Vérifier pourquoi la méthode sendReply n'est pas utilisée dans  
      * la gestion du retour en fonction du résultat  
30       */       */
31      public function post($request_data) {      public function post($request_data) {
32    
33            // Initialisation de l'attribut contents avec les clés qui doivent être
34            // récupérées dans les données JSON reçues
35            $this->contents['module'] = '';
36            $this->contents['data'] = '';
37    
38          // Vérification de la validité du format des données de la requête REST          // Vérification de la validité du format des données de la requête REST
39          // Si le format n'est pas correct, on retourne un code 400          // Si le format n'est pas correct, on retourne un code 400
40          if (!$this->requestValid($request_data)) {          if (!$this->requestValid($request_data)) {
41              return $this->sendHttpCode(400, "Le format des données reçues n'est pas correct.");              return $this->sendHttpCode(400, "Le format des données reçues".
42                                           " n'est pas correct.");
43          }          }
44    
45          // Instanciation de la classe qui s'occupe du traitement métier          // Instanciation de la classe qui s'occupe du traitement métier
46          $this->metier_manager = new MaintenanceManager();          $this->metier_manager = new MaintenanceManager();
47    
48          // Exécution du traitement          // Exécution du traitement
49          $ret = $this->metier_manager->performMaintenance($request_data['module'], $request_data['data']);          $ret = $this->metier_manager->performMaintenance($request_data['module'],
50          $msg = $this->metier_manager->getMessage();                                                           $request_data['data']);
51    
52          // Gestion du retour en fonction du résultat          // Gestion du retour en fonction du résultat
53          if ($ret != 'KO') {          return $this->sendReply($ret, $this->metier_manager->getMessage());
             return $this->sendHttpCode(200, $msg);  
         }  
         return $this->sendHttpCode(500, $msg);  
54    
55      }      }
56    

Legend:
Removed from v.715  
changed lines
  Added in v.777

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26