Subversion Repositories eFlore/Projets.eflore-projets

Rev

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

Filtering Options

Rev Age Author Path Log message Diff Changes
859 4079 d 9 h raphael /trunk/services/ coste: support du multi-num_nom: sanitization et ajout de tests  
/trunk/services/modules/0.1/coste/Textes.php
/trunk/services/tests/0.1/coste/CosteNomsTest.php
858 4079 d 10 h raphael /trunk/services/modules/0.1/coste/ coste/textes: support de requête sur de multiples numéros nomenclaturaux  
/trunk/services/modules/0.1/coste/Textes.php
857 4079 d 11 h raphael /trunk/services/configurations/ config: coste: suppression des directives inutiles/inutilisées  
/trunk/services/configurations/config_coste.ini
856 4079 d 11 h raphael /trunk/services/ coste/textes: remplacement de l'ancien webservice par la version réécrite  
/trunk/services/modules/0.1/coste/Textes2.php
/trunk/services/tests/0.1/coste/CosteNomsTest.php
855 4080 d 5 h raphael /trunk/services/tests/0.1/ coste/textes/tests: ajouts de tests pour la prochaine version du webservice coste/textes  
/trunk/services/tests/0.1/coste
/trunk/services/tests/0.1/coste/CosteNomsTest.php
/trunk/services/tests/0.1/ServiceEflorePhpUnit.php
854 4080 d 5 h raphael /trunk/services/modules/0.1/coste/ API: coste/textes: réécriture du webservice  
/trunk/services/modules/0.1/coste/Textes2.php
852 4081 d 6 h raphael /trunk/services/modules/0.1/ api: Projets passe désormais la base de données courante comme 3ème paramètre optionnel des services->consulter()  
/trunk/services/modules/0.1/Projets.php
851 4081 d 6 h raphael /trunk/services/bibliotheque/ cache: le cache (utilisé par Projet->consulter()), passe l'intégralité des paramètres reçus et non plus seulement les 2 premiers  
/trunk/services/bibliotheque/CacheEflore.php
848 4084 d 8 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: fix 2 notices  
/trunk/services/modules/0.1/nvjfl/NomsVernaculaires.php
847 4084 d 8 h aurelien /trunk/services/modules/0.1/commun/ Correction des noms trop longs par troncage (temporaire normalement)  
/trunk/services/modules/0.1/commun/Commun.php
846 4084 d 11 h raphael /trunk/services/modules/0.1/cel/ cel: images: déduplications des emails générés afin d'obtenir les identités auprès de l'API de Tela.
Pour l'Acer Mons par exemple, 213 emails étaient demandés auprès de:
http://www.tela-botanica.org/service:annuaire:utilisateur/identite-par-courriel/
(autant que d'images).
En dédupliquant les identités, ce chiffres descend à 23 ce qui est moins susceptible d'atteindre
la limite de GET Apache (4096).
 
/trunk/services/modules/0.1/cel/Images.php
845 4084 d 11 h raphael /trunk/services/bibliotheque/ lib: Utilisateurs: clarification de la classe (en attendant que le RestClient soit un toolkit "stateless"  
/trunk/services/bibliotheque/Utilisateurs.php
841 4084 d 12 h raphael /trunk/services/modules/0.1/eflore/ eflore: Support des requêtes ontologies multiplexées.
Le code des ontologies communes aux référentiels (bdnt) et celui des
ontologies baseflor était à l'origine *quasi-similaire*.

Ainsi, moyennant l'application manuelle du hunk #1, le patch représentant
l'historique du passage au multiplexage pour les ontologies bdnt s'applique
à eflore:
$ svn diff -r300:HEAD services/modules/0.1/commun/Ontologies.php|patch -p4 -F3

Les ontologies eflore sont nécessaires à de nombreux endroits, à commencer
par les fiches d'eflore consultation mais aussi à d'autres webservices
(par exemple meta-donnees)

Avec ce commit il est désormais possible de multiplexer les critères:
/service:eflore:0.1/eflore/ontologies/contactType:o,contactType:p,datum:wgs84
Les valeurs sont retournées dans un tableau indexé par critère, eg:
{ "datum:wgs84": { ... }, "contactType:o": { ... } }

commits connexes: 732,733,832,836
TODO: tests phpunit
 
/trunk/services/modules/0.1/eflore/Ontologies.php
839 4085 d 4 h raphael /trunk/ revert r838 (commit problem)  
/trunk/Changelog
/trunk/scripts/modules/eflore/get-donnees-fiches-eflore.php
/trunk/scripts/modules/nvjfl/Nvjfl.php
/trunk/services/bibliotheque/ReponseHttp.php
838 4085 d 4 h raphael /trunk/ misc: ajout Changelog  
/trunk/Changelog
/trunk/scripts/modules/eflore/get-donnees-fiches-eflore.php
/trunk/scripts/modules/nvjfl/Nvjfl.php
/trunk/services/bibliotheque/ReponseHttp.php
837 4085 d 5 h raphael /trunk/services/modules/0.1/commun/ meta-données: ajout d'un cache pour les ontologies redondantes  
/trunk/services/modules/0.1/commun/MetaDonnees.php
836 4085 d 8 h raphael /trunk/services/modules/0.1/baseflor/ baseflor: Support des requêtes ontologies multiplexées.
Le code des ontologies communes aux référentiels (bdnt) et celui des
ontologies baseflor était à l'origine *quasi-similaire*.

Ainsi à l'aide d'un peu de fuzzing et quelques tweaks, le patch représentant
l'historique du passage au multiplexage pour les ontologies bdnt s'applique
à baseflor:
$ svn diff -r300:HEAD services/modules/0.1/commun/Ontologies.php|patch -p4 -F3

Un peu de contexte: les ontologies baseflor sont nécessaires:
* lors de l'affichage de l'onglet "écologie" d'eflore consultation
* plus précisément dans les graphiques
* plus précisément encore dans les légendes

Ainsi ce n'était pas moins de 94 requêtes HTTP (moyenne) qui étaient
effectuées sur le modèle suivant:
/service:eflore:0.1/baseflor/ontologies/VES:8
/service:eflore:0.1/baseflor/ontologies/VEC:6
...

Avec ce commit il est désormais possible de multiplexer les critères:
/service:eflore:0.1/baseflor/ontologies/VEL:1,VEL:2,VEL:3,VEL:4,VEL:5,VEL:6,VEL:7,VEL:8 ...
Les valeurs sont retournées dans un tableau indexé par critère, eg:
{ "VEHE:7": { ... }, "VER:7": { ... } }

Le côté client sera implémenté dans:
eflore consultation: metier/api_0.1/Graphiques.php

TODO: tests phpunit
 
/trunk/services/modules/0.1/baseflor/Ontologies.php
835 4086 d 3 h raphael /trunk/services/tests/0.1/nvjfl/ tests: oublie d'un fichier (suite r834)  
/trunk/services/tests/0.1/nvjfl/NvjflOntologiesTest.php
834 4086 d 3 h raphael /trunk/services/tests/0.1/ tests: ajout de plusieurs tests relatifs aux ontologies:
* relatifs aux ontologies bdnt (ontologies communes aux ontologies de référentiel)
* relatifs aux ontologies bdnt multiplexés (plusieurs paramètres séparés par des virgules)
* relatifs aux ontologies nvjfl multiplexées (cf r832 eflore/projet)
+ bugfix de tests existants.

==> 8 failures (api 0.1 uniquement)
 
/trunk/services/tests/0.1/commun/CommunOntologiesTest.php
/trunk/services/tests/0.1/nvjfl/NvjflNomsVernaTest.php
833 4086 d 3 h raphael /trunk/services/tests/0.1/ tests: optionnalité du passage des paramètres dans l'utilisation de l'API de test  
/trunk/services/tests/0.1/ServiceEflorePhpUnit.php
832 4086 d 3 h raphael /trunk/services/modules/0.1/nvjfl/ nom-vernaculaires: multiplexage des requêtes ontologiques amélioré [ontologie "genre" pris en compte]

Les requêtes multi-critères sont désormais utilisées pour plusieurs ontologies différentes, du moment
que le webservice distant est le même. Ainsi les performances sont augmentées significativement
lors plusieurs retour.champs appartement à un même webservice d'ontologies sont demandés.

Exemple, pour le taxon nt=1382, la langue français lg=fra et les retour.champs=conseil_emploi,genre:
(/nvjfl/noms-vernaculaires/attributions?masque.nt=1382&masque.lg=fra&retour.champs=conseil_emploi,genre&navigation.limite=4)

La requête d'ontologies interne est désormais:
* /nvjfl/ontologies/numStatut:1,genreNombre:11,genreNombre:10

Alors qu'auparavant elle aurait induit:
* /nvjfl/ontologies/numStatut:1 # multiplage actif, mais une seule valeur pour cette ontologie
* /nvjfl/ontologies/genreNombre:11 # ontologie différente (non-multiplexé par ailleurs)
* /nvjfl/ontologies/genreNombre:10 # idem
 
/trunk/services/modules/0.1/nvjfl/NomsVernaculaires.php
831 4086 d 5 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: ontologies, 2 bugfixes
1) l'attribut _result_ontologies@nvjfl était présent dans le JSON renvoyé à cause
de l'utilisation de isset() sur une valeur de tableau existante mais NULL.
array_key_exists() devait être utilisé

2) Lorsque la recherche d'ontologies est nécessaire, mais que 1 seule l'est, le
JSON d'ontologies renvoyé n'a pas la même structure (il n'est pas indexé par critère
de requête). Ce cas n'était pas traité correctement ce qui amenait à retourner un
"conseil_emploi" NULL.
exemple d'URL: /nvjfl//noms-vernaculaires/attributions?masque.nt=1382&masque.lg=fra&retour.champs=conseil_emploi&navigation.limite=2
 
/trunk/services/modules/0.1/nvjfl/NomsVernaculaires.php
830 4086 d 8 h raphael /trunk/services/modules/0.1/commun/ aide: en cas d'erreur, ne pas générer d'E_NOTICE de variable non-existente ce qui ne pourrait qu'amplifier le problème  
/trunk/services/modules/0.1/commun/Aide.php
826 4088 d 8 h raphael /trunk/services/tests/0.1/cel/ tests: cel: ajout d'un test sur une date antérieure à 1901 (php 64 bits) associée à une image Cel  
/trunk/services/tests/0.1/cel/CelImagesTest.php
825 4088 d 8 h raphael /trunk/services/tests/0.1/baseflor/ tests: baseflor: ajout d'un test sur /baseflor/informations/bdtfx.nn:XXX/relations/catminat  
/trunk/services/tests/0.1/baseflor/InformationsBaseflorTest.php
815 4088 d 12 h raphael /trunk/services/modules/0.1/ trivial syntax error  
/trunk/services/modules/0.1/Projets.php
814 4088 d 12 h raphael /trunk/services/modules/0.1/ class-name conflict: "moissonnage" vs "moissonnnage"...  
/trunk/services/modules/0.1/Projets.php
/trunk/services/modules/0.1/moissonnage/Ontologies.php
813 4088 d 12 h raphael /trunk/services/configurations/ config: correction du répertoire de cache en -test avec "make test"  
/trunk/services/configurations/test-conf.sed
812 4088 d 12 h raphael /trunk/services/configurations/ config: suppression du sous-répertoire de cache /eflore/ dans {ref:chemin_cache}  
/trunk/services/configurations/config_baseflor.ini
/trunk/services/configurations/config_bdtxa.ini
/trunk/services/configurations/config_chorodep.ini
/trunk/services/configurations/config_eflore.ini
/trunk/services/configurations/config_moissonnage.ini
811 4091 d 4 h raphael /trunk/services/modules/0.1/ projets/tests: fix class-name conflict sur "Cartes"  
/trunk/services/modules/0.1/Projets.php
/trunk/services/modules/0.1/bdtxa/Cartes.php
/trunk/services/modules/0.1/chorodep/Cartes.php
/trunk/services/modules/0.1/eflore/Cartes.php
/trunk/services/modules/0.1/moissonnage/Cartes.php
810 4091 d 5 h raphael /trunk/services/configurations/ config: changements des valeurs par défaut ("bdd_nom" pour cel et "chemin_cache" en test)  
/trunk/services/configurations/config_cel.ini
/trunk/services/configurations/test-conf.sed
809 4091 d 5 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: utilisation de la bonne URL de webservice (prod-prod, test-test)  
/trunk/services/modules/0.1/nvjfl/NomsVernaculaires.php
808 4091 d 6 h raphael /trunk/services/modules/0.1/baseflor/ r807 follow-up: conflit de nom de méthode pour convertirEnPNGAvecRsvg|indexerFichierPng dans CommunGraphiques.php  
/trunk/services/modules/0.1/baseflor/CommunGraphiques.php
807 4091 d 6 h raphael /trunk/services/modules/0.1/ chorodep|bdtxa/cartes: factorisation du code de génération du fichier de carte PNG, dans Commun  
/trunk/services/modules/0.1/bdtxa/cartes/TaxonsCartes.php
/trunk/services/modules/0.1/chorodep/cartes/TaxonsCartes.php
/trunk/services/modules/0.1/commun/Commun.php
806 4091 d 12 h raphael /trunk/services/configurations/ config: fix la génération automatique de bdd_nom pour prendre en compte tb_cel[_test]  
/trunk/services/configurations/config_cel.ini
/trunk/services/configurations/test-sous-conf.sed
805 4091 d 12 h raphael /trunk/services/modules/0.1/chorodep/cartes/ chorodep/cartes: test du retour de exec(rsvg-convert)  
/trunk/services/modules/0.1/chorodep/cartes/TaxonsCartes.php
804 4091 d 12 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  
/trunk/services/modules/0.1/chorodep/cartes/TaxonsCartes.php
803 4092 d 7 h raphael /trunk/services/modules/0.1/nvjfl/ nvjfl: compat PHP-5.2, utilisation de "self::m" au lieu de "static::m"  
/trunk/services/modules/0.1/nvjfl/NomsVernaculaires.php
802 4092 d 7 h raphael /trunk/services/configurations/ config: amélioration du Makefile et suppression de double-quote problèmatiques pour parser les .ini  
/trunk/services/configurations/Makefile
/trunk/services/configurations/config.defaut.ini
/trunk/services/configurations/config_test.ini
/trunk/services/configurations/prod-conf.sed
/trunk/services/configurations/test-conf.sed
/trunk/services/configurations/test-sous-conf.sed
801 4092 d 7 h raphael /trunk/services/ cache: fix de l'obtention de la durée du cache auprès de Commun  
/trunk/services/bibliotheque/CacheEflore.php
/trunk/services/modules/0.1/commun/Commun.php