[jboss-cvs] JBossAS SVN: r78563 - projects/docs/enterprise/4.3/Cache/Cache_Pojo_Cache_Guide/fr-FR.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Sep 16 02:18:35 EDT 2008


Author: croe at redhat.com
Date: 2008-09-16 02:18:35 -0400 (Tue, 16 Sep 2008)
New Revision: 78563

Modified:
   projects/docs/enterprise/4.3/Cache/Cache_Pojo_Cache_Guide/fr-FR/Architecture.po
Log:
Translation in progress

Modified: projects/docs/enterprise/4.3/Cache/Cache_Pojo_Cache_Guide/fr-FR/Architecture.po
===================================================================
--- projects/docs/enterprise/4.3/Cache/Cache_Pojo_Cache_Guide/fr-FR/Architecture.po	2008-09-16 06:10:44 UTC (rev 78562)
+++ projects/docs/enterprise/4.3/Cache/Cache_Pojo_Cache_Guide/fr-FR/Architecture.po	2008-09-16 06:18:35 UTC (rev 78563)
@@ -1,36 +1,39 @@
+# translation of Architecture.po to French
 # Language /tmp/mike/JBEAP420/Cache translations for JBEAP package.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+#
 # Automatically generated, 2007.
-#
+# Corina Roe <croe at redhat.com>, 2008.
 msgid ""
 msgstr ""
-"Project-Id-Version: JBEAP 420\n"
+"Project-Id-Version: Architecture\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n"
 "POT-Creation-Date: 2008-09-14 23:48+0000\n"
-"PO-Revision-Date: 2001-02-09 01:25+0100\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2008-09-16 16:17+1000\n"
+"Last-Translator: Corina Roe <croe at redhat.com>\n"
+"Language-Team: French <i18 at redhat.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. Tag: title
 #: Architecture.xml:5
 #, no-c-format
 msgid "Architecture"
-msgstr ""
+msgstr "Architecture"
 
 #. Tag: para
 #: Architecture.xml:6
 #, no-c-format
 msgid "Following explains the concepts and top-level design of PojoCache."
-msgstr ""
+msgstr "Ce qui suit explique les concepts et design au plus haut niveau de PojoCache."
 
 #. Tag: title
 #: Architecture.xml:9
 #, no-c-format
 msgid "Dynamic AOP interception"
-msgstr ""
+msgstr "Interception dynamique AOP"
 
 #. Tag: para
 #: Architecture.xml:10
@@ -49,6 +52,10 @@
 "modification will invoke the corresponding <literal>CacheInterceptor</"
 "literal> instance. Below is a schematic illustration of this process."
 msgstr ""
+"JBossAop offre un API (<literal>appendInterceptor</literal>) pour ajouter un intercepteur en cours d'exécution. PojoCache utilise fréquemment cette fonctionnalité pour offrir plus de transparence pour l'utilisateur. Toute classe POJO \"aspectisée\" aura une instance <literal>org.jboss.aop.InstanceAdvisor</literal> qui lui est associée. Pendant une opération <literal>putObject(FQN fqn, Object pojo)</literal> (API expliqué ci-dessous), PojoCache va examiner pour voir s'il existe déjà un <literal>org."
+"jboss.cache.aop.CacheInterceptor</literal> attaché. (Notez qu'un "
+"<literal>CacheInterceptor</literal> est le point d'entrée d'un PojoCache pour gérer dynamiquement les contenus cache). S'il ne l'a pas fait, on en ajoutera un à l'objet <literal>InstanceAdvisor</literal> . Après cela, toute modification de champ POJO invoquera l'instance <literal>CacheInterceptor</"
+"literal> correspondante. Vous trouverez ci-dessous une illustration schématique de ce processus."
 
 #. Tag: para
 #: Architecture.xml:13
@@ -58,7 +65,7 @@
 "level read write. From the perspective of PojoCache, field level "
 "interception is the appropriate mechanism to synchronize with the backend "
 "cache store. Please note that,"
-msgstr ""
+msgstr "JBossAop est capable d'intercepter à la fois l'appel niveau méthode et lecture-écriture niveau champ. Du point de vue de PojoCache, l'interception niveau champ est le mécanisme qui convient pour synchroniser le store cache backend. Veuillez noter que,"
 
 #. Tag: para
 #: Architecture.xml:16
@@ -68,6 +75,8 @@
 "regardless whether it is <literal>public</literal>, <literal>protected</"
 "literal>, or <literal>private</literal>"
 msgstr ""
+"l'interception niveau fichier s'applique à tous les qualifiers (critères de sélection) d'accès, qu'il soient <literal>publics</literal>, <literal>protégés</"
+"literal>, ou <literal>privés</literal>"
 
 #. Tag: para
 #: Architecture.xml:19
@@ -78,6 +87,8 @@
 "result, any field with these 3 qualifiers will not be replicated or "
 "persisted."
 msgstr ""
+"on passe outre l'interception de champ avec les qualifiers <literal>final</literal>, "
+"<literal>static</literal>, et <literal>transient</literal>. Par conséquence, tout champ qui comprend 3 qualifiers ne sera ni répliqué, ni persisté."
 
 #. Tag: para
 #: Architecture.xml:23
@@ -92,25 +103,25 @@
 "field read invocation does not involve in-memory reference at all. This is "
 "because the value in cache and memory should have been synchronized during "
 "write operation. As a result, the field value from the cache is returned."
-msgstr ""
+msgstr "Les valeurs ci-dessous illustrent les opérations pour effectuer lecture et écriture de champ. Une fois qu'un POJO est géré par un cache (par ex., après qu'une méthode  <literal>putObject</literal> ait été appelée), Aop va invoquer <literal>CacheInterceptor</literal> automatiquement à chaque fois qu'il y a une lecture ou une écriture de champ. Vous devriez cependant voir la différence entre ces chiffres. Tandis que l'opération écriture de champ ira au cache tout d'abord, puis invoquera la mise à jour en mémoire, l'invocation lecture de champ n'implique pas de référence en mémoire dutout. C'est parce que la valeur dans cache et dans la mémoire devrait avoir été synchronisée pendant l'opération écriture. Par conséquence, la valeur de champ est retournée du cache."
 
 #. Tag: title
 #: Architecture.xml:27
 #, no-c-format
 msgid "Dynamic AOP interception for field write"
-msgstr ""
+msgstr "Interception dynamique AOP pour écriture de champ"
 
 #. Tag: title
 #: Architecture.xml:35
 #, no-c-format
 msgid "Dynamic AOP Interception for field read"
-msgstr ""
+msgstr "Interception dynamique AOP pour lecture de champ"
 
 #. Tag: title
 #: Architecture.xml:42 Architecture.xml:85
 #, no-c-format
 msgid "Object mapping by reachability"
-msgstr ""
+msgstr "Mappage d'objet par accessibilité"
 
 #. Tag: para
 #: Architecture.xml:43
@@ -125,18 +136,22 @@
 "discussed above. In addition, the cache will map recursively the primitive "
 "object fields into the corresponding cache nodes."
 msgstr ""
+"UN objet complexe est, par définition, un objet qui peut consister de références d'objets composites. Une fois qu'un objet complexe est déclaré \"préparé\" (par ex., un objet <literal>Person</literal>), pendant l'opération <literal>putObject(Fqn fqn, "
+"Object pojo)</literal>, PojoCache va ajouter une instance "
+"<literal>CacheInterceptor</literal> au "
+"<literal>InstanceAdvisor</literal> associé à cet objet, comme nous l'avons expliqué ci-dessus. De plus, le cache va associer les champs de l'objet primitif récursivement dans les noeuds cache correspondants."
 
 #. Tag: para
 #: Architecture.xml:46
 #, no-c-format
 msgid "The mapping rule is as follows:"
-msgstr ""
+msgstr "La règle de mappage est la suivante:"
 
 #. Tag: para
 #: Architecture.xml:51
 #, no-c-format
 msgid "Create a tree node using <literal>fqn</literal>, if not yet existed."
-msgstr ""
+msgstr "Crée une arborescence en utilisant  <literal>fqn</literal>, s'il n'existe pas déjà."
 
 #. Tag: para
 #: Architecture.xml:56
@@ -145,6 +160,8 @@
 "Go through all the fields (say, with an association <literal>java.lang."
 "reflect.Field</literal> type field) in POJO,"
 msgstr ""
+"Aller dans tous les champs (disons, ayant une association de champ de type <literal>java.lang."
+"reflect.Field</literal>) dans POJO,"
 
 #. Tag: para
 #: Architecture.xml:61
@@ -156,6 +173,9 @@
 "types supported now: <literal>String, Boolean, Double, Float, Integer, Long, "
 "Short, Character.</literal>"
 msgstr ""
+"si c'est un type primitif, la valeur du champ sera stockée sous <literal>fqn</literal> avec pour paire <literal>(clé, valeur)</literal> associée à <literal>"
+"(field.getName(), field.getValue()).</literal> Les types primitifs pris en charge maintenant sont: <literal>String, Boolean, Double, Float, Integer, Long, "
+"Short, Character.</literal>"
 
 #. Tag: para
 #: Architecture.xml:66
@@ -164,13 +184,13 @@
 "If it is a non-primitive type, creates a child <literal>FQN</literal> and "
 "then recursively executes another <literal>pubObject</literal> until it "
 "reaches all primitive types."
-msgstr ""
+msgstr "Si c'est un type non-primitif, il crée un enfant <literal>FQN</literal> et puis il exécute récursivement un autre <literal>pubObject</literal> jusqu'à ce qu'il atteigne tous les types primitifs."
 
 #. Tag: para
 #: Architecture.xml:73
 #, no-c-format
 msgid "Following is a code snippet that illustrates this mapping process"
-msgstr ""
+msgstr "Vous trouverez ci-dessous un extrait de code qui illustre le processus de mappage"
 
 #. Tag: programlisting
 #: Architecture.xml:76
@@ -186,6 +206,15 @@
 "   putObject(new Fqn(fqn, field.getName()), value);\n"
 "}"
 msgstr ""
+"for (Iterator i = type.getFields().iterator(); i.hasNext();) {\n"
+"   Field field = (Field) i.next();\n"
+"   Object value = field.get(obj);\n"
+"   CachedType fieldType = getCachedType(field.getType());\n"
+"   if (fieldType.isImmediate()) {\n"
+"    immediates.put(field.getName(), value);\n"
+"} else {\n"
+"   putObject(new Fqn(fqn, field.getName()), value);\n"
+"}"
 
 #. Tag: para
 #: Architecture.xml:77
@@ -196,7 +225,7 @@
 "types (e.g., List and Address). After we execute the <literal>putObject</"
 "literal> call, the resulting tree node will schematically look like the "
 "cache node in the following figures:"
-msgstr ""
+msgstr "Prenons un exemple de définition de classe POJO extrait de la section Annexe dans laquelle se trouve un objet <literal>Person</literal> qui a des types composites non-primitifs (par ex., List et Address). Après avoir exécuté l'appel <literal>putObject</literal>, le noeud d'arborescence qui suit ressemblera schématiquement au noeud cache contenu dans les valeurs suivantes:"
 
 #. Tag: programlisting
 #: Architecture.xml:80
@@ -207,6 +236,10 @@
 "\n"
 "cache.putObject(\"/aop/joe\", joe);"
 msgstr ""
+"Person joe = new Person();\n"
+"joe.setAddress(new Address());\n"
+"\n"
+"cache.putObject(\"/aop/joe\", joe);"
 
 #. Tag: para
 #: Architecture.xml:81
@@ -229,6 +262,14 @@
 "will have <literal>Zip</literal> , <literal>Street</literal> , etc. stored "
 "there)."
 msgstr ""
+"Les API PojoCache API seront expliqués plus en détail plus tard. Mais veuillez noter l'illustration du mappage objet par accessibilité dans le schéma suivant. Le "
+"fqn <literal>/aop/joe</literal> est associé au POJO <literal>joe</"
+"literal>. Ainsi, sous cet fqn, il y a trois noeuds enfant: <literal>addr,"
+"</literal><literal>skills,</literal> et <literal>languages.</literal> Si vous observez la déclaration de classe <literal>Person</literal>, vous remarquerez que <literal>addr</literal> est une classe d' <literal>Address</literal>, "
+"<literal>skills</literal> est un <literal>Set</literal> (Ensemble) et "
+"<literal>languages</literal> est un type de <literal>List</literal> (Liste). Comme ils ne sont pas primitifs, ils sont insérés récursivement sous l'objet parent "
+"(<literal>joe</literal>) jusqu'à ce que l'on atteigne tous les types primitifs. Ainsi, on réduit le graphe de l'objet à un affichage d'arborescence qui convient bien à notre structure interne. Aussi, notez bien que tous les types primitifs seront stockés dans la HashMap du noeud respectif (par ex., <literal>addr</literal> "
+"aura <literal>Zip</literal> , <literal>Street</literal> , etc. stocké à cet endroit)."
 
 #. Tag: para
 #: Architecture.xml:92
@@ -238,7 +279,7 @@
 "feature that we just explained. Notice how a <literal>Person</literal> "
 "object (e.g., <literal>joe</literal>) that has complex object references "
 "will be mapped into the underlying cache store as explained above."
-msgstr ""
+msgstr "Voici un extrait de code qui démontre le mappage d'objet par fonctionnalité d'accessibilité que nous venons d'expliquer. Veuillez noter comment un objet <literal>Person</literal> (par ex., <literal>joe</literal>) qui a des références d'objet complexe sera mappé dans le store cache sous-jacent, comme expliqué ci-dessus."
 
 #. Tag: programlisting
 #: Architecture.xml:95
@@ -271,6 +312,32 @@
 "// of cache contents automatically.\n"
 "joe.setAge(41);"
 msgstr ""
+"import org.jboss.cache.PropertyConfigurator;\n"
+"import org.jboss.cache.aop.PojoCache;\n"
+"import org.jboss.test.cache.test.standAloneAop.Person;\n"
+"import org.jboss.test.cache.test.standAloneAop.Address;\n"
+"\n"
+"PojoCache tree = new PojoCache();\n"
+"PropertyConfigurator config = new PropertyConfigurator(); // configure tree "
+"cache.\n"
+"config.configure(tree, \"META-INF/replSync-service.xml\");\n"
+"\n"
+"Person joe = new Person(); // instantiate a Person object named joe\n"
+"joe.setName(\"Joe Black\");\n"
+"joe.setAge(31);\n"
+"\n"
+"Address addr = new Address(); // instantiate a Address object named addr\n"
+"addr.setCity(\"Sunnyvale\");\n"
+"addr.setStreet(\"123 Albert Ave\");\n"
+"addr.setZip(94086);\n"
+"joe.setAddress(addr); // set the address reference\n"
+"\n"
+"tree.startService(); // kick start tree cache\n"
+"tree.putObject(\"/aop/joe\", joe); // add aop sanctioned object (and sub-"
+"objects) into cache.\n"
+"// since it is aspectized, use of plain get/set methods will take care\n"
+"// of cache contents automatically.\n"
+"joe.setAge(41);"
 
 #. Tag: para
 #: Architecture.xml:96
@@ -280,7 +347,7 @@
 "instantiating the <literal>PojoCache</literal> , configuring, and starting "
 "the cache instance. Then, a user creates the aspectized POJO that will be "
 "put into the cache using <literal>putObject()</literal> API."
-msgstr ""
+msgstr "Noter qu'un usage typique du <literal>PojoCache</literal> implique d'instancier <literal>PojoCache</literal> , de le configurer, et de démarrer une instance de cache. Ensuite, un utilisateur crée un POJO aspectisé qui sera mis dans un cache en utilisant un API <literal>putObject()</literal>."
 
 #. Tag: para
 #: Architecture.xml:99
@@ -294,7 +361,7 @@
 "list as well. The following figure illustrates the node structure from the "
 "replicated GUI point of view. Details of Collection class support will be "
 "given later."
-msgstr ""
+msgstr "De plus, PojoCache supporte également get/set avec un type de paramètre de quelques classes de <literal>Collection</literal> (par ex., <literal>List</literal> , <literal>Map</literal> , et <literal>Set</literal> ) automatiquement. Par exemple, l'extrait de code suivant, combiné à l'exemple ci-dessus, entraînera PojoCache à gérer les états pour le liste des <literal>Languages</literal> également. Le schéma suivant illustre la structure du noeud du point de vue du GUI répliqué. Des détails sur le support de la classe de Collection seront données plus tard."
 
 #. Tag: programlisting
 #: Architecture.xml:102
@@ -305,18 +372,22 @@
 "lang.add(\"Mandarin\");\n"
 "joe.setLanguages(lang);"
 msgstr ""
+"ArrayList lang = new ArrayList();\n"
+"lang.add(\"Ensligh\");\n"
+"lang.add(\"Mandarin\");\n"
+"joe.setLanguages(lang);"
 
 #. Tag: title
 #: Architecture.xml:104
 #, no-c-format
 msgid "Schematic illustration of List class mapping"
-msgstr ""
+msgstr "Illustration schématique du mappage de la liste de classes"
 
 #. Tag: title
 #: Architecture.xml:111
 #, no-c-format
 msgid "Object relationship management"
-msgstr ""
+msgstr "Gestion des relations Objet"
 
 #. Tag: para
 #: Architecture.xml:112
@@ -331,7 +402,7 @@
 "mapping will be needed outside of the cache system to express the object "
 "relationship. PojoCache, in contrast, can manage object relationship "
 "transparently for users."
-msgstr ""
+msgstr "Comme nous l'avons mentionné, le système cache traditionnel ne supporte pas la gestion de la relation objet pendant la sérialisation (que ce soit le store de données persistantes ou bien répliquée dans les autres noeuds en mémoire). Toutes ces relations seront perdues une fois que les objets auront été répliqués ou persistés. Par conséquence, le mappage explicite sera utile en dehors du système cache pour exprimer la relation objet. PojoCache, par constraste, peut gérer la relation objet de façon transparente pour les utilisateurs."
 
 #. Tag: para
 #: Architecture.xml:115
@@ -344,6 +415,8 @@
 "referenced <literal>fqn</literal> will be stored there to redirect any query "
 "and update to the original node."
 msgstr ""
+"Pendant le processus du mappage, nous devrons vérifier si aucun des objets associés est référencé circulairement ou en multiple. Un mécanisme de comptage de référence a été mis en place en association avec le <literal>CacheInterceptor</"
+"literal>. Si un nouvel objet était créé dans le cache référencé à un autre POJO, un <literal>fqn</literal> référencé sera stocké à cet endroit pour rediriger toute demande et pour mettre à jour le noeud d'origine."
 
 #. Tag: para
 #: Architecture.xml:118
@@ -358,12 +431,14 @@
 "we will keep track of the reference counting for the sub-object "
 "<literal>addr.</literal>"
 msgstr ""
+"Pour ne prendre qu'un exemple, disons que des objets multiples <literal>Person</literal> "
+"(\"joe\"et \"mary\") peuvent avoir la même <literal>Address</literal>. Graphiquement, voici à quoi cela ressemble dans les noeuds de l'arborescence. Comme nous avons déjà pu l'établir dans la section précédente sur le mappage par accessibilité, le POJO va établir des correspondances récursives dans le cache. Cependant, lorsqu'on détecte une référence multiple (dans ce cas, l' <literal>Address</literal>), nous devrons contrôler le comptage de référence du sous-objet <literal>addr.</literal>"
 
 #. Tag: title
 #: Architecture.xml:122
 #, no-c-format
 msgid "Schematic illustration of object relationship mapping"
-msgstr ""
+msgstr "Illustration schématique du mappage de la relation objet"
 
 #. Tag: para
 #: Architecture.xml:129
@@ -371,7 +446,7 @@
 msgid ""
 "In the following code snippet, we show programmatically the object sharing "
 "example."
-msgstr ""
+msgstr "Dans l'extrait de code suivant, nous montrons l'exemple de partage d'objet programmatiquement."
 
 #. Tag: programlisting
 #: Architecture.xml:132
@@ -416,6 +491,44 @@
 "tree.removeObject(\"/aop/joe\");\n"
 "maryAddr = mary.getAddress(); // Should still have the address."
 msgstr ""
+"import org.jboss.cache.PropertyConfigurator;\n"
+"import org.jboss.cache.aop.PojoCache;\n"
+"import org.jboss.test.cache.test.standAloneAop.Person;\n"
+"import org.jboss.test.cache.test.standAloneAop.Address;\n"
+"\n"
+"PojoCache tree = new PojoCache();\n"
+"PropertyConfigurator config = new PropertyConfigurator(); // configure tree "
+"cache.\n"
+"config.configure(tree, \"META-INF/replSync-service.xml\");\n"
+"\n"
+"Person joe = new Person(); // instantiate a Person object named joe\n"
+"joe.setName(\"Joe Black\");\n"
+"joe.setAge(31);\n"
+"\n"
+"Person mary = new Person(); // instantiate a Person object named mary\n"
+"mary.setName(\"Mary White\");\n"
+"mary.setAge(30);\n"
+"\n"
+"Address addr = new Address(); // instantiate a Address object named addr\n"
+"addr.setCity(\"Sunnyvale\");\n"
+"addr.setStreet(\"123 Albert Ave\");\n"
+"addr.setZip(94086);\n"
+"\n"
+"joe.setAddress(addr); // set the address reference\n"
+"mary.setAddress(addr); // set the address reference\n"
+"\n"
+"tree.startService(); // kick start tree\n"
+"tree.putObject(\"/aop/joe\", joe); // add aop sanctioned object (and sub-"
+"objects) into cache.\n"
+"tree.putObject(\"/aop/mary\", mary); // add aop sanctioned object (and sub-"
+"objects) into cache.\n"
+"\n"
+"Address joeAddr = joe.getAddress();\n"
+"Address maryAddr = mary.getAddress(); // joeAddr and maryAddr should be the "
+"same instance\n"
+"\n"
+"tree.removeObject(\"/aop/joe\");\n"
+"maryAddr = mary.getAddress(); // Should still have the address."
 
 #. Tag: para
 #: Architecture.xml:133
@@ -425,6 +538,8 @@
 "<literal>mary</literal> should still have reference the same "
 "<literal>Address</literal> object in the cache store."
 msgstr ""
+"Notez qu'après que nous ayons retiré l'instance <literal>joe</literal> du cache, "
+"<literal>mary</literal> devrait toujours avoir référencé le même objet <literal>Address</literal> dans le cache store."
 
 #. Tag: para
 #: Architecture.xml:136
@@ -437,6 +552,10 @@
 "literal> and <literal>mary</literal> under cache management as above. Then, "
 "we failover to <literal>cache2.</literal> Here is the code snippet:"
 msgstr ""
+"Pour illustrer la gestion de cette relation, observons le code Java dans un environnement répliqué. Imaginons que nous avons deux instances de cache séparées dans le groupement maintenant (<literal>cache1</literal> et <literal>cache2</"
+"literal>). Supposons que sur la première instance de cache, on mette à la fois <literal>joe</"
+"literal> et <literal>mary</literal> under cache management as above. Ensuite, "
+"on reprend à <literal>cache2.</literal>. Voici l'extrait du code:"
 
 #. Tag: programlisting
 #: Architecture.xml:139
@@ -468,12 +587,37 @@
 "int zip = joeAddr.getAddress().getZip(); // Should be 95123 as well instead "
 "of 94086!"
 msgstr ""
+"/**\n"
+" * Code snippet on cache2 during fail-over\n"
+" */\n"
+"import org.jboss.cache.PropertyConfigurator;\n"
+"import org.jboss.cache.aop.PojoCache;\n"
+"import org.jboss.test.cache.test.standAloneAop.Person;\n"
+"import org.jboss.test.cache.test.standAloneAop.Address;\n"
+"\n"
+"PojoCache tree = new PojoCache();\n"
+"PropertyConfigurator config = new PropertyConfigurator(); // configure tree "
+"cache.\n"
+"config.configure(tree, \"META-INF/replSync-service.xml\");\n"
+"\n"
+"tree.startService(); // kick start tree\n"
+"Person joe = tree.getObject(\"/aop/joe\"); // retrieve the POJO reference.\n"
+"Person mary = tree.getObject(\"/aop/mary\"); // retrieve the POJO "
+"reference.\n"
+"\n"
+"Address joeAddr = joe.getAddress();\n"
+"Address maryAddr = mary.getAddress(); // joeAddr and maryAddr should be the "
+"same instance!!!\n"
+"\n"
+"maryAddr = mary.getAddress().setZip(95123);\n"
+"int zip = joeAddr.getAddress().getZip(); // Should be 95123 as well instead "
+"of 94086!"
 
 #. Tag: title
 #: Architecture.xml:140
 #, no-c-format
 msgid "Object inheritance hierarchy"
-msgstr ""
+msgstr "Hiérarchie de l'héritance de l'objet"
 
 #. Tag: para
 #: Architecture.xml:141
@@ -486,6 +630,9 @@
 "cache, all the class attributes of <literal>Person</literal> can be managed "
 "as well."
 msgstr ""
+"PojoCache préserve la hiérarchie de l'héritance de l'objet POJO automatiquement. Par exemple, si <literal>Student</literal> rallonge <literal>Person</literal> "
+"avec un autre champ <literal>année</literal> (voir la définition POJO dans l'Annexe), alors, une fois que <literal>Student</literal> est mis dans un autre"
+"cache, tous les attributs de classe de <literal>Person</literal> peuvent être gérés également."
 
 #. Tag: para
 #: Architecture.xml:144
@@ -493,7 +640,7 @@
 msgid ""
 "Following is a code snippet that illustrates how the inheritance behavior of "
 "a POJO is maintained. Again, no special configuration is needed."
-msgstr ""
+msgstr "Vous trouverez ci-dessous un extrait de code qui illustre comment le comportement d'héritage de POJO est maintenu. Aucune configuration particulière n'est exigée."
 
 #. Tag: programlisting
 #: Architecture.xml:147
@@ -515,12 +662,27 @@
 "joe.setYear(\"Junior\"); // will be intercepted by the cache\n"
 "joe.setName(\"Joe Black II\"); // also intercepted by the cache"
 msgstr ""
+"import org.jboss.test.cache.test.standAloneAop.Student;\n"
+"\n"
+"Student joe = new Student(); // Student extends Person class\n"
+"joe.setName(\"Joe Black\"); // This is base class attributes\n"
+"joe.setAge(22); // This is also base class attributes\n"
+"joe.setYear(\"Senior\"); // This is Student class attribute\n"
+"\n"
+"tree.putObject(\"/aop/student/joe\", joe);\n"
+"\n"
+"//...\n"
+"\n"
+"joe = (Student)tree.putObject(\"/aop/student/joe\");\n"
+"Person person = (Person)joe; // it will be correct here\n"
+"joe.setYear(\"Junior\"); // will be intercepted by the cache\n"
+"joe.setName(\"Joe Black II\"); // also intercepted by the cache"
 
 #. Tag: title
 #: Architecture.xml:148
 #, no-c-format
 msgid "Collection class proxy"
-msgstr ""
+msgstr "Proxy de classe de collection"
 
 #. Tag: para
 #: Architecture.xml:149
@@ -542,6 +704,10 @@
 "retrieve this proxy reference and use this reference to perform POJO "
 "operations."
 msgstr ""
+"Les classes POJO qui héritent de <literal>Set</literal> , <literal>List</"
+"literal> , et <literal>Map</literal> sont considérées comme \"aspectisées\" automatiquement. C'est à dire que les utilisateurs n'ont pas besoin de les déclarer \"préparés\" dans le fichier de configuration xml ou bien par annotation. Comme nous ne sommes pas autorisés à instrumenter la bibliothèque du système Java, nous allons utiliser l'approche proxy à la place. C'est à dire que lorsque nous rencontrons n'importe quelle instance de Collection, nous allons:<itemizedlist> <listitem> "
+"<para>Créer une instance proxy Collection et la placer dans le cache (à la place de la référence d'origine). Le mappage des éléments Collection sera effectué récursivement comme on s'y attend.</para> </listitem> <listitem> "
+"<para>Si l'instance Collection est un sous-objet, comme par ex., à l'intérieur d'un autre POJO, nous devrons échanger la référence d'origine par une autre référence proxy pour promouvoir une utilisation transparente.</para> </listitem> </itemizedlist> Pour obtenir une référence proxy, les utilisateurs peuvent alors utiliser <literal>getObject</literal> pour extraire cette référence proxy et l'utiliser pour les opérations POJO."
 
 #. Tag: para
 #: Architecture.xml:160
@@ -549,7 +715,7 @@
 msgid ""
 "Here is a code snippet that illustrates the usage of a Collection proxy "
 "reference:"
-msgstr ""
+msgstr "Voici un extrait de code qui illustre l'utilisation d'une référence proxy Collection:"
 
 #. Tag: programlisting
 #: Architecture.xml:163
@@ -566,6 +732,16 @@
 "reference\n"
 "proxyList.add(\"FOUR\"); // This will be intercepted by the cache"
 msgstr ""
+"List list = new ArrayList();\n"
+"list.add(\"ONE\");\n"
+"list.add(\"TWO\");\n"
+"\n"
+"tree.putObject(\"/aop/list\", list);\n"
+"list.add(\"THREE\"); // This won't intercept by the cache!\n"
+"\n"
+"List proxyList = tree.getObject(\"/aop/list\"; // Note that list is a proxy "
+"reference\n"
+"proxyList.add(\"FOUR\"); // This will be intercepted by the cache"
 
 #. Tag: para
 #: Architecture.xml:164
@@ -573,7 +749,7 @@
 msgid ""
 "Here is another snippet to illustrate the dynamic swapping of the Collection "
 "reference when it is embedded inside another object:"
-msgstr ""
+msgstr "Voici un autre extrait qui illustre l'échange dynamique de la référence Collection lorsqu'elle est incluse dans un autre objet:"
 
 #. Tag: programlisting
 #: Architecture.xml:167
@@ -591,6 +767,17 @@
 "ArrayList lang = joe.getLanguages(); // Note that lang is a proxy reference\n"
 "lang.add(\"French\"); // This will be intercepted by the cache"
 msgstr ""
+"Person joe = new Person();\n"
+"joe.setName(\"Joe Black\"); // This is base class attributes\n"
+"ArrayList lang = new ArrayList();\n"
+"lang.add(\"English\");\n"
+"lang.add(\"Mandarin\");\n"
+"joe.setLanguages(lang);\n"
+"// This will map the languages List automatically and swap it out with the "
+"proxy reference.\n"
+"tree.putObject(\"/aop/student/joe\", joe);\n"
+"ArrayList lang = joe.getLanguages(); // Note that lang is a proxy reference\n"
+"lang.add(\"French\"); // This will be intercepted by the cache"
 
 #. Tag: para
 #: Architecture.xml:168
@@ -598,7 +785,7 @@
 msgid ""
 "As you can see, <literal>getLanguages</literal> simply returns the field "
 "reference that has been swapped out for the proxy reference counterpart."
-msgstr ""
+msgstr "Comme vous pouvez constater, <literal>getLanguages</literal> retourne simplement la référence de champ qui a été échangée par une référence proxy correspondante."
 
 #. Tag: para
 #: Architecture.xml:171
@@ -608,7 +795,7 @@
 "<literal>removeObject</literal>), you still can use the proxy reference "
 "since we will update the in-memory copy of that reference during detachment. "
 "Below is a code snippet illustrating this:"
-msgstr ""
+msgstr "Finalement, quand vous retirez une référence Collection du cache (par ex., via <literal>removeObject</literal>), vous pouvez toujours utiliser la référence proxy car nous allons mettre à jour la copie de cette référence en-mémoire pendant le détachement. Vous trouverez ci-dessous un extrait de code qui illustre ce propos:"
 
 #. Tag: programlisting
 #: Architecture.xml:174
@@ -626,12 +813,23 @@
 "tree.removeObject(\"/aop/list\"); // detach from the cache\n"
 "proxyList.add(\"FOUR\"); // proxyList has 4 elements still."
 msgstr ""
+"List list = new ArrayList();\n"
+"list.add(\"ONE\");\n"
+"list.add(\"TWO\");\n"
+"\n"
+"tree.putObject(\"/aop/list\", list);\n"
+"List proxyList = tree.getObject(\"/aop/list\"); // Note that list is a proxy "
+"reference\n"
+"proxyList.add(\"THREE\"); // This will be intercepted by the cache\n"
+"\n"
+"tree.removeObject(\"/aop/list\"); // detach from the cache\n"
+"proxyList.add(\"FOUR\"); // proxyList has 4 elements still."
 
 #. Tag: title
 #: Architecture.xml:175
 #, no-c-format
 msgid "Limitation"
-msgstr ""
+msgstr "Limitation"
 
 #. Tag: para
 #: Architecture.xml:176
@@ -640,7 +838,7 @@
 "Use of Collection class in PojoCache helps you to track fine-grained changes "
 "in your collection fields automatically. However, current implementation has "
 "the follow limitation that we plan to address soon."
-msgstr ""
+msgstr "L'utilisation de la classe Collection dans PojoCache vous aide à retracer les changements subtils (fine-grained) de vos champs de collection automatiquement. Cependant, l'implémentation actuelle comporte la limitation suivante que nous envisageons de régler sous peu."
 
 #. Tag: para
 #: Architecture.xml:179
@@ -654,7 +852,7 @@
 "java.util.HashSet implementation. The List interface maps to java.util."
 "ArrayList implementation. The Map interface maps to java.util.HashMap "
 "implementation."
-msgstr ""
+msgstr "Actuellement, nous ne prenons en charge qu'une implémentation limitée des classes Collection, c'est à dire que nous supportons les API dans List, Set, et Map. Cependant, comme les API ne stipulent pas de contraintes comme la valeur ou la clé NULL, cela rend le mappage de l'instance de l'utilisateur de notre proxy difficile. Ainsi, ArrayList accepterait la valeur NULL, alors que d'autres implémentations ne l'accepteraient pas. L'interface Set mappe l'implémentation java.util.ArrayList. L'interface du schéma de correspondance mappe l'implémentation java.util.HashMap."
 
 #. Tag: para
 #: Architecture.xml:182
@@ -665,4 +863,5 @@
 "slow. Performance between Set, Map and List collections also vary. Adding "
 "items to a Set is slower than a List or Map, since Set does not allow "
 "duplicate entries."
-msgstr ""
+msgstr "La performance espérée est un autre problème associé. Ainsi, l'implémentation actuelle est ordonnée de façon à ce que insertion/suppression (insert/delette) de la Collection, ralentisse. La performance entre les collections Set, Map et List varient également. Ajouter des objets Set (ensemble) est moins rapide qu'une List ou Map, car Set n'autorise pas les entrées dupliquées."
+




More information about the jboss-cvs-commits mailing list