Index: topia/doc/DevDoc.rst diff -u topia/doc/DevDoc.rst:1.1 topia/doc/DevDoc.rst:1.2 --- topia/doc/DevDoc.rst:1.1 Mon Jun 7 10:21:38 2004 +++ topia/doc/DevDoc.rst Wed Jun 16 09:41:26 2004 @@ -98,3 +98,43 @@ Le context lors de la recherche d'un service, regarde s'il y a une interface de ce nom si c'est le cas, alors il l'ajoute a la liste des interfaces instanciées par le proxy qui encapsule le service. + +Les templates +============= + +Les noms de variable commence par un _ pour éviter les noms posant problème +avec le langage. + +Les noms de variable utile seulement pour le framework commence par un _ et +finisse aussi par un _ pour les différencier des précédentes. + +Template des Entities +--------------------- + +Les Entities sont sépararé en deux, les DO (Data Object) qui servent au +stokage pure des données. Et les TO (Transfer Object) qui servent à la +manipulation de l'information. Chacun d'eux herite d'une interface qui +reprend toutes les méthodes d'acces aux attributs. Ils héritent aussi +d'interface où sont declarés les méthodes d'accès et de modification des +attributs du framework (date de creation, date de modification, ...) + +Lorsque l'utilisateur demande un Entity. On lui retourne toujours un TO. +Le chemin pour cela est la creation d'un TO vide, dans lequel on recopie les +information d'un DO que l'on vient de charger. + +Pour les attributs du DO qui pointe vers d'autre entity, seul l'Id est +conservé dans le TO, Le TO associé a cette Id ne sera chargé que si +l'attribut est réellement utilisé. + +Si l'attribut est une liste d'entity on a alors une liste d'Id. Les Entities +seront alors tous chargés en même temps lors de la première utilisation de +l'attribut (en écriture comme en lecture). Il n'y a aucune mise à jour de la +liste d'Id, au fur et à mesure de l'utilisation de Entity. + +Implantation des templates +-------------------------- + +Le template des DO hérite du template des TO en surchargeant quelque +méthode. Car que se soit un DO ou un TO on retrouve les mêmes méthodes et +les mêmes attributs. La seul chose qui varie réellement est la gestion du +topiaId.