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
814 3982 d 21 h raphael /trunk/services/modules/0.1/ class-name conflict: "moissonnage" vs "moissonnnage"...  
811 3985 d 13 h raphael /trunk/services/modules/0.1/ projets/tests: fix class-name conflict sur "Cartes"  
809 3985 d 15 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: utilisation de la bonne URL de webservice (prod-prod, test-test)  
808 3985 d 16 h raphael /trunk/services/modules/0.1/baseflor/ r807 follow-up: conflit de nom de méthode pour convertirEnPNGAvecRsvg|indexerFichierPng dans CommunGraphiques.php  
807 3985 d 16 h raphael /trunk/services/modules/0.1/ chorodep|bdtxa/cartes: factorisation du code de génération du fichier de carte PNG, dans Commun  
805 3985 d 21 h raphael /trunk/services/modules/0.1/chorodep/cartes/ chorodep/cartes: test du retour de exec(rsvg-convert)  
804 3985 d 21 h raphael /trunk/services/modules/0.1/chorodep/cartes/ chorodep/cartes: test présence répertoire de cache lors de la génération des vignettes png  
803 3986 d 16 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: compat PHP-5.2, utilisation de "self::m" au lieu de "static::m"  
801 3986 d 17 h raphael /trunk/services/ cache: fix de l'obtention de la durée du cache auprès de Commun  
797 3986 d 20 h raphael /trunk/services/ config: substitution des directives de configuration `cache.*` par `cache_*`

Commande effectuée:
$ sed -i -r \
-e 's/cache\.(stockageChemin|miseEnCache|dureeDeVie)/cache_\1/' \
-e "s/\$this->config\['cache'\]\['(stockageChemin|miseEnCache|dureeDeVie)'\]/\$this->config['cache_\1']/" \
$(egrep -rl 'cache.*(miseEnCache|dureeDeVie|stockageChemin)')
 
795 3986 d 20 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 3987 d 14 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  
792 3987 d 15 h raphael /trunk/services/modules/0.1/ typo: francisation  
791 3987 d 15 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
 
788 3988 d 15 h raphael /trunk/services/ webservices: fix des tests sur baseflor/informations (paramètres depart/limite)  
787 3988 d 15 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  
784 3988 d 17 h raphael /trunk/services/ webservices: actualisation de plusieurs tests (chorodep/nvjfl/bdtfx)  
783 3988 d 18 h raphael /trunk/services/ webservices: actualisation de plusieurs tests (ontologies/baseflor)  
770 4009 d 13 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 4009 d 17 h raphael /trunk/services/modules/0.1/ ontologies/sptb: correction de notices + traçage des requête mysql + compat PHP-5.2  
767 4009 d 19 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 4015 d 20 h raphael /trunk/services/modules/0.1/baseveg/syntaxons/ syntaxon: fix d'une notice, Commun->traiterResultat() attend 2 arguments  
765 4015 d 20 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 4015 d 21 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 4015 d 21 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 4015 d 22 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 4015 d 23 h raphael /trunk/services/modules/0.1/baseflor/ baseflor: gestion d'erreur: reformulations/typo mineures  
759 4016 d 14 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 4017 d 14 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 4022 d 21 h alex /trunk/services/modules/0.1/moissonnage/cartes/ Correction bug sur requete SQL  
750 4022 d 21 h alex /trunk/services/modules/0.1/moissonnage/cartes/  
747 4022 d 22 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
 
743 4023 d 15 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 4023 d 16 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 4027 d 16 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 4029 d 22 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 4036 d 20 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 4041 d 17 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 4041 d 17 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.
 
732 4041 d 17 h raphael /trunk/services/modules/0.1/commun/ ontologies communes: fix cosmétiques.
1° usage du paramètre retour.champs qui n'était pas utilisé jusqu'ici et n'aurait
pas pu être utilisé dans le cas d'un retour.format différent de "max".

2° ajout d'un commentaire relatif aux SELECT imbriqués actuellement utilisés et
auxquel une série de JOIN serait à préférer.

3° clarification de formaterOntologiesId()

4° réécriture et renommage afficherDonnees() en calculerClassID().
Une variable est passée par référence en paramètre de la fonction et
les conditions imbriquées sont remplacées par des return rapides.
La gestion des champs demandés est améliorée.