Oui : Je me souviens plus que l'on avait décider d'utiliser Open JPA. Après au niveau fonctionnalité au peut rajouter le point que Flo avait relevé pour la gestion des transactions par annotation. On avait aussi discuté de l'écriture du modèle texte. Julien Le Thu, 03 May 2012 17:19:17 +0200, Arnaud Thimel <thimel@codelutin.com> a écrit :
Pour la réalisation, je propose que Tony et moi nous y attaquions sur la semaine prochaine.
Pour ne pas partir seuls, j'ai programmé une réunion de lancement demain à 15h30 dont l'ordre du jour est grosso modo le présent draft de roadmap (merci Brendan).
Kevin, Julien, je suis conscient que vous auriez aimé y participer, je vous invite donc à vous exprimer ici avant l'heure de début.
Arnaud
Le 03/05/2012 15:48, Brendan Le Ny a écrit :
Bonjour,
Premier draft pour la roadmap ToPIA 3, ça reprend et synthétise la précédente discussion :
Pré-travail en vue d'un changement de version majeure =====================================================
- Déprécier immédiatement et supprimer dans ToPIA 3 tout le code qu'on ne veut plus dans ToPIA
- un paquet util qui pourrait redescendre dans ObServe
- ServiceTransformer
- TopiaQuery
- Supprimer tout le code déprécié
Migration vers JPA ==================
- Réécrire TopiaContextImpl en utilisant l'API JPA (EntityManager...)
- Vérifier/Corriger les mappings générés
- Utiliser OpenJPA comme implémentation de JPA par défaut et permettre d'utiliser Hibernate 4
Améliorations diverses ======================
- Arrêter de modéliser les DAO (ne garder que le nécessaire dans le transformer)
- Avoir des entités POJO (sans topiaContext dedans) par défaut et avoir un mode pour Isis-Fish
- Une approche « bonne pratique par défaut » pour ne pas avoir de boilerplate tagValues (0 config = config propre). Exemple :
model.tagvalue.constantPrefix=PROPERTY_ model.tagValue.doNotGenerateBooleanGetMethods=true
- Forcer l'encapsulation du code spécifique JPA : rendre DAO#createQuery() et findByQuery, countByQuery protected. A contrario, dans le DAO, laisser l'accès à l'intégralité de la sous-couche pour usage exceptionnel
- TopiaException extends RuntimeException
- Permettre de déclarer tout un package du modèle (stéréotype) pour que toutes les classes à l'intérieur soient considérées comme entités (sans besoin de mettre le stéréotype sur chaque classe)
- Introduire un contrat TopiaIdFactory, Un TopiaRootContext est lié à une instance de cette factory (qu'on peut changer par configuration), ainsi que trois implémentations
- L'actuelle, corrigée en utilisant RandomStringUtils (pas de boucle), implémentation par défaut
- Une déterministe (Random avec graine et/ou compteur)
- Une qui utilise l'implémentation fournie par l'implémentation JPA (par Hibernate ou autre)
Autre chose ?
_______________________________________________ Topia-devel mailing list Topia-devel@list.nuiton.org http://list.nuiton.org/cgi-bin/mailman/listinfo/topia-devel
_______________________________________________ Topia-devel mailing list Topia-devel@list.nuiton.org http://list.nuiton.org/cgi-bin/mailman/listinfo/topia-devel