merci de ta réponse,
je n'ai encore rien codé, je réfléchis à comment faire donc je suis assez libre vis à vis de la solution.
mon modèle est simple, pour ne pas entrer dans les détails ici, on va considérer que je dois rassembler deux objectmodels (en fait des couples (entitymodel, informationmodel) : pour plus d'info : http://ufo.labs.libre-entreprise.org/node1.php)
Cela me donne un modèle "brut" mais simple à lire (j'ai les parsers xml qui vont bien ;)). Je voudrais utiliser ici un ModelReader.
Ensuite, je dois modifier ce modèle (en caricaturant à peine le modèle lu est un MLD et je dois le transformer en MCD) => Transformer.
Les fichiers générés sont de plusieurs types : Java (mais pas des beans :(), XML, BSH (je crois qu'ils vont être remplacé par les groovy), FTL ...
Dans ma préétude je voudrais faire :
[MonReader] -> [ModelBrut] -> [TransformerX] -> [ModelX] -> [Generator] -> ...
avec ModelBrut composé d'éléments implémentant les interfaces classiques (ObjectModelAttribute par exemple).
J'espère avoir était presque clair ;)
Manni-Bucau Romain
PS : en fait je ne suis aps sur d'avoir compris un détail : le "input model" n'est pas forcément une classe implémentant / héritant d'un modèle EUGene ? je croyais que si. Sinon pour le moment mon modèle est une Map<String, Entity> = (nom de l'entité, entité (format perso))
Le mercredi 18 novembre 2009 à 11:56 +0100, Manni-Bucau Romain a écrit :
> bonjour,Il est possible actuellement d'étendre le reader de base. La tâche n'est
>
> j'ai vu que la tache 112 (demande) d'eugene n'est pas terminée, avez
> vous une idée de la date où EUGene 2 sera utilisable ? J'aurai a
> priori besoin des transformers et des readers personnalisables.
pas clause, car d'autres readers doivent être créé (ZargoReader, ...) et
peut-être d'autres modifications qui en découle.
Pour la configuration, le GeneratorTask n'inclut pas la gestion des
reader en entrée... Si tu souhaites le modifier pour prendre en compte
un reader, tu es libre de proposer un patch.
Sinon je te conseille vivement d'utiliser maven et le
maven-eugene-plugin. Tu peux t'inspirer du pom.xml du module eugene-test
pour un exemple de configuration avec un reader.
Est-ce que tous les objets du NeogiaObjectModel implémentent les
>
> Enfin sera -t- il possible d'utiliser sans cast ses propres types
> (ex : je crée un NeogiaObjectModelAttributeImpl et dans mon
> NeogiaObjectModel j'aurais un getAttribute(), je renverrais a priori
> un ObjectModelAttribute (interface etc...) alors que je voudrais que
> l'utilisateur ait directement ma classe) ? (en utilisant les template
> peut être ;))
interfaces ObjectModel d'EUGene ?
Principe d'EUGene 2 :
- Phase 1 : lecture des fichiers d'entrées, création de l'ObjectModel
d'entrée --> MonReader extends ObjectModelReader
- Phase 2 : interprétation du modèle d'entrée pour générer du Java -->
MonTransformer extends ObjectModelToJavaTransformer
Pour mieux t'aider, il faudrait que tu m'expliques comment est fait ton
modele et ce que tu veux en faire :
- quels sont les fichiers d'entrée ?
- quel est le modèle mémoire représentant le contenu des fichiers
d'entrée (input model) ?
- quels sont les fichiers de sortie (java, ...) ?
> _______________________________________________
>
> d'avance merci
>
> Manni-Bucau Romain
> Eugene-devel mailing list
> Eugene-devel@list.nuiton.org
> http://list.nuiton.org/cgi-bin/mailman/listinfo/eugene-devel
_______________________________________________
Eugene-devel mailing list
Eugene-devel@list.nuiton.org
http://list.nuiton.org/cgi-bin/mailman/listinfo/eugene-devel