Subversion Repositories eFlore/Projets.eflore-projets

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
796 3935 d 22 h raphael /trunk/services/tests/0.1/baseflor/ config: substitution de cache.stockageChemin par cache_stockageChemin  
795 3935 d 22 h raphael /trunk/services/ config: substitution de cache.stockageChemin par cache_stockageChemin car
framework::Config() ne sait pas traiter une variable dotée d'un point dont
la partie gauche ne représente pas une section d'un fichier .ini.

Commande effectuée:
$ sed -i \
-e 's/cache.stockageChemin/cache_stockageChemin/' \
-e "s/\$this->config['cache']['stockageChemin']/\$this->config['cache_stockageChemin']/" \
configurations/* modules/0.1/*/*/*.php modules/0.1/eflore/Cartes.php tests/0.1/baseflor/GraphiquesBaseflorTest.php
 
794 3936 d 16 h raphael /trunk/services/modules/0.1/ projets/tests: correction d'une régression de r791: les segments d'URL supplémentaires n'étaient pas pris en compte  
793 3936 d 17 h raphael /trunk/services/tests/0.1/commun/ tests: fix CommunMetaDonneesTest (projet "commun" => "eflore")  
792 3936 d 17 h raphael /trunk/services/modules/0.1/ typo: francisation  
791 3936 d 17 h raphael /trunk/services/modules/0.1/ projets/tests: workaround autour du fait qu'on cherche à utiliser parfois simultanément
plusieurs classes distinctes utilisant le même nom sans namespace (PHP-5.2)... no comment
testsuite "services": 13 échecs
 
790 3937 d 16 h raphael /trunk/services/tests/0.1/ webservices/tests: consulterBrut() et creerUrl() statiques et passage de \$service et \$projet à consulterJson().
En effet, on peut observer que certains tests, tels que EfloreOntologiesTest::testRecherche(), se comportent
différemment selon que la suite est lancée en intégralité ou non.
Le service requêté peut par exemple s'avérer finalement être "baseflor" au
lieu initialement "eflore". L'usage extensif d'attribut de classe pourrait en être
la cause (dans le cas du lancement de tests en parallèles par exemple).
En tout état de cause, et pour faciliter la compréhension du code au détriment d'un léger
accroissement de la verbosité, consulterBrut(), creerUrl() et consulterJson() nécessitent
désormais l'intégralité des paramètres dont ils font usage.
[ le nombre de tests en échec ne change pas: 20 ]
 
789 3937 d 16 h raphael /trunk/services/tests/0.1/eflore/ webservices/tests: fix EfloreOntologiesTest::testRecherche  
788 3937 d 17 h raphael /trunk/services/ webservices: fix des tests sur baseflor/informations (paramètres depart/limite)  
787 3937 d 17 h raphael /trunk/services/modules/0.1/eflore/ cartes: fix pour les dates d'observations nulles, le nom de colonne "nom" pour tb_cel.cel_zones_geo et l'omission de certains paramètres au webservice  
786 3937 d 18 h raphael /trunk/services/tests/0.1/baseflor/ webservices: fix GraphiquesBaseflorTest [typo => tests failures]  
785 3937 d 18 h raphael /trunk/services/tests/0.1/ webservices: actualisation de plusieurs tests (aide, suite au changement du webservice "commun" => "eflore"  
784 3937 d 19 h raphael /trunk/services/ webservices: actualisation de plusieurs tests (chorodep/nvjfl/bdtfx)  
783 3937 d 20 h raphael /trunk/services/ webservices: actualisation de plusieurs tests (ontologies/baseflor)  
770 3958 d 15 h raphael /trunk/services/modules/0.1/bdtfx/ bdtfx/taxons: tentative manquée d'amélioration de l'API: retourner le nom_retenu_complet, sans faire appel aux ontologies (ie: retour.format=min), utile pour la détermination du Cel  
768 3958 d 19 h raphael /trunk/services/modules/0.1/ ontologies/sptb: correction de notices + traçage des requête mysql + compat PHP-5.2  
767 3958 d 22 h raphael /trunk/services/modules/0.1/ services: ajout de debug aux requêtes SQL + correction d'un masque pour le service de noms bdtxa  
766 3964 d 22 h raphael /trunk/services/modules/0.1/baseveg/syntaxons/ syntaxon: fix d'une notice, Commun->traiterResultat() attend 2 arguments  
765 3964 d 22 h raphael /trunk/services/modules/0.1/ ontologies: follow-up r759 et r762: utilisation de Bdd::MODE_OBJET pour le fetch PDO [dépend de la r429 du Framework]  
764 3964 d 23 h raphael /trunk/services/modules/0.1/baseflor/ ontologies: suppression de l'appel au webservice des ontologies baseflor (InformationsBaseflor) par une requête SQL directe hyper-simplifiée [dépend de la r429 du Framework]  
763 3964 d 23 h raphael /trunk/services/modules/0.1/baseflor/ ontologies: suppression de l'appel au webservice des ontologies baseflor (CommunGraphiques) par une requête SQL directe hyper-simplifiée [dépend de la r429 du Framework]  
762 3965 d 0 h raphael /trunk/services/modules/0.1/baseflor/ ontologies: suppression de l'appel au webservice des ontologies baseflor (InformationsTaxonsSup) par une requête SQL directe hyper-simplifiée  
761 3965 d 1 h raphael /trunk/services/modules/0.1/baseflor/ baseflor: gestion d'erreur: reformulations/typo mineures  
759 3965 d 16 h raphael /trunk/services/modules/0.1/bdtfx/ ontologies: suppression de l'appel au webservice des ontologies "communes" par une requête SQL directe hyper-simplifiée  
758 3966 d 16 h raphael /trunk/services/modules/0.1/commun/ ontologies communes: correction de 2 notices PHP dans le cas de l'absence de passage de
masque et de retour_champs.
Ex: /service:eflore:0.1/bdnt/ontologies/rangTaxo:220/nom
 
751 3971 d 23 h alex /trunk/services/modules/0.1/moissonnage/cartes/ Correction bug sur requete SQL  
750 3971 d 23 h alex /trunk/services/modules/0.1/moissonnage/cartes/  
749 3971 d 23 h alex /trunk/services/configurations/  
748 3972 d 0 h alex /trunk/services/presentations/images/cartes/ Mise a jour de la ressource SVG contenant le fond cartographique de la France pour le web service d'eflore de moissonnage  
747 3972 d 0 h alex /trunk/services/modules/0.1/moissonnage/ Mise à jour du web service de moissonnage generant les cartes SVG de repartition des observations pour e-Flore.
Ajout de commentaires dans les classes
 
746 3972 d 17 h alex /trunk/services/configurations/ Correction du parametre projetsDispo  
745 3972 d 17 h alex /trunk/services/configurations/ Mise à jour des fichiers de configuration pour les web services nasa-srtm et moissonnage  
744 3972 d 17 h alex /trunk/services/presentations/ Suppression donnees SRTM de la NASA  
743 3972 d 18 h alex /trunk/services/modules/0.1/nasa-srtm/ Mise à jour de la classe altitude : correction des paramètres acceptés par le web service et ajout d'un cartouche de commentaire en début de code.  
742 3972 d 18 h alex /trunk/services/modules/0.1/ Renommage service altitude. Le nouveau nom du web service est maintenant nasa-srtm (pour être plus en adéquation avec les ressources utilisées que sont les fichiers HGT du modèle SRTM de la NASA)  
740 3976 d 18 h raphael /trunk/services/modules/0.1/bdtfx/ service noms: debug ajout de __FILE__ comme commentaire suffixé aux requêtes
afin de faciliter l'identification des appels en cas d'activation du general_log MySQL.
 
736 3979 d 0 h alex /trunk/services/ Ajout d'un nouveau web service altitude qui calcule l'altitude pour un point dont on passe les coordonnees longitude/latitude dans les parametres de l'URL.
Dans le dossier présentations, ajout d'un dossier SRTM contenant les fichiers MNT par secteurs de 1*1 degré, décrivant l'altitude d'échantillons de points situés tous les 90 m
 
735 3985 d 22 h alex /trunk/services/modules/0.1/moissonnage/cartes/ Correction bug sur les requêtes de récupération des stations pour un genre donné  
734 3990 d 19 h raphael /trunk/services/modules/0.1/nvjfl/ nom-vernaculaires: support de requêtes multi-critères pour NVJFL, côté client: ACTIVATION
Ce commit active la recherche d'ontologie par multi-critères
pour le web-service de nom vernaculaire JFL.
Un define(), nécessaire mais malheureusement précédemment omis, a été rajouté.
 
733 3990 d 19 h raphael /trunk/services/modules/0.1/commun/ ontologies: support de requêtes multi-critères pour les ontologies (partie 2/2).
Lorsque des ontologies sont demandées, celles-ci peuvent désormais être regroupées
au sein d'une même requête.
La modification, portée à Commun/Ontologie.php affecte donc les web-services n'ayant *pas*
redéfini leur classe d'accès aux ontologies, c'est à dire (au 28/06/2013):
* nvjfl
* bdnt

Exemple:
Avant, 3 requêtes:
/service:eflore:0.1/nvjfl/ontologies/numStatut:1
/service:eflore:0.1/nvjfl/ontologies/numStatut:2
/service:eflore:0.1/nvjfl/ontologies/genreNombre:10

Après, 1 requête:
/service:eflore:0.1/nvjfl/ontologies/numStatus:1,numStatus:2,genreNombre:10

Dans le seul cas d'une requête multi-critères le format de retour du web-service
a été modifié: Un ensemble de clef-valeurs est retourné dans lequel chaque clef
représente le nom d'un des critères demandés.
Si un critère ne correspond à rien dans la BDD, celui-ci est absent de l'ensemble retourné.


$ ddiff \
<(GET "http://eflore/$i"|json_pp) \
<(GET "http://www.tela-botanica.org/$i"|json_pp)

# service:eflore:0.1/nvjfl/noms-vernaculaires/attributions?masque.nt=1382&masque.lg=fra&retour.champs=conseil_emploi
# 2 appels d'ontologies nvjfl, résultat identique

# service:eflore:0.1/bdtxa/taxons/13517/relations/inferieurs
# 1 appel d'ontologie bdnt/nom, résultat identique

$ diff \
<(GET http://eflore/service:eflore:0.1/bdnt/ontologies/rangTaxo:70|json_pp) \
<(GET http://eflore/service:eflore:0.1/bdnt/ontologies/rangTaxo:70,rangTaxo:-1|json_pp) \
|grep -v rangTaxo:70
# même résultat (-1 n'existe pas)

Le comparatif suivant provient de l'étude de la requête suivante,
représentative d'une recherche de nom commun (cf: Cel/export XLS):
"/service:eflore:0.1/nvjfl/noms-vernaculaires/attributions?masque.nt=1382&masque.lg=fra&retour.champs=conseil_emploi"

Avant Après
Requêtes HTTP 3 2
Connexions SQL 4 3
SELECT 15 10
Temps sur 300 (*) 1m36 1m30

(*) $ time \
mysql -N tb_eflore<<<"SELECT num_taxonomique FROM bdtfx_v1_01 WHERE num_nom = num_nom_retenu ORDER BY ORD(SUBSTRING(nom_sci, 4, 1)) LIMIT 300;" | \
xargs -i -t -n 1 curl -so /dev/null "http://eflore/service:eflore:0.1/nvjfl/noms-vernaculaires/attributions?masque.nt={}&masque.lg=fra&retour.champs=conseil_emploi";

Le faible différentiel de temps observable s'explique partiellement par le fait que toutes les recherches de nom vernaculaire
n'aboutissent pas systématiquement à l'émission de plusieurs requêtes d'ontologie.
Le différentiel n'en reste pas moins décevant.