[jboss-cvs] JBossAS SVN: r95991 - projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Nov 4 01:27:18 EST 2009


Author: ldelima at redhat.com
Date: 2009-11-04 01:27:18 -0500 (Wed, 04 Nov 2009)
New Revision: 95991

Modified:
   projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR/performance.po
   projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR/persistent_classes.po
Log:
translation ongoing

Modified: projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR/performance.po
===================================================================
--- projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR/performance.po	2009-11-04 06:22:41 UTC (rev 95990)
+++ projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR/performance.po	2009-11-04 06:27:18 UTC (rev 95991)
@@ -109,7 +109,7 @@
 "Project-Id-Version: performance\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n"
 "POT-Creation-Date: 2009-09-15 07:03+0000\n"
-"PO-Revision-Date: 2009-11-02 17:00+1000\n"
+"PO-Revision-Date: 2009-11-04 16:23+1000\n"
 "Last-Translator: \n"
 "Language-Team:  <en at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -1005,7 +1005,6 @@
 #. Tag: para
 #: performance.xml:444
 #, no-c-format
-#, fuzzy
 msgid ""
 "In an application with a separate business tier, the business logic must "
 "\"prepare\" all collections that the web tier needs before returning. This "
@@ -1022,7 +1021,7 @@
 "Em uma aplicação com uma camada de negócios separada, a lógica de negócios "
 "deve \"preparar\" todas as coleções que serão usadas pela camada web antes "
 "de retornar. Isto sgnifica que a camada de negócios deve carregar todos os "
-"dados e retorná-los já inicializados para a camada de apresentação. "
+"dados e retorná-los já inicializados para a camada de apresentação que é representada para um caso de uso particular. "
 "Geralmente, a aplicação chama <literal>Hibernate.initialize()</literal> para "
 "cada coleção que será usada pela camada web (essa chamada deve ocorrer antes "
 "da sessão ser fechada) ou retorna a coleção usando uma consulta Hibernate "
@@ -1033,7 +1032,7 @@
 
 #. Tag: para
 #: performance.xml:459
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "You can also attach a previously loaded object to a new <literal>Session</"
 "literal> with <literal>merge()</literal> or <literal>lock()</literal> before "
@@ -1045,18 +1044,18 @@
 "<literal>Session</literal><literal>merge()</literal> ou <literal>lock()</"
 "literal> antes de acessar coleções não inicializadas (ou outros proxies). O "
 "Hibernate não faz e certamente <literal>não deve</literal> fazer isso "
-"automaticamente, pois isso introduziria semântica em transações ad hoc."
+"automaticamente, pois isso introduziria semântica em transações  impromptu."
 
 #. Tag: para
 #: performance.xml:469
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Sometimes you do not want to initialize a large collection, but still need "
 "some information about it, like its size, for example, or a subset of the "
 "data."
 msgstr ""
 "Às vezes você não quer inicializar uma coleção muito grande, mas precisa de "
-"algumas informações (como o mesmo tamanho) ou alguns de seus dados."
+"algumas informações, como o mesmo tamanho, ou um subconjunto de seus dados."
 
 #. Tag: para
 #: performance.xml:474
@@ -1121,7 +1120,7 @@
 
 #. Tag: para
 #: performance.xml:498
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Batch fetching for classes/entities is easier to understand. Consider the "
 "following example: at runtime you have 25 <literal>Cat</literal> instances "
@@ -1135,16 +1134,16 @@
 "mapping of <literal>Person</literal>:"
 msgstr ""
 "A recuperação em lote para classes/entidades é mais fácil de entender. "
-"Imagine que você tem a seguinte situação em tempo de execução: Você tem 25 "
+"Imagine que você tem a seguinte situação em tempo de execução: você tem 25 "
 "instâncias de <literal>Cat</literal> carregadas em uma <literal>Session</"
-"literal>, cada <literal>Cat</literal> tem uma referência ao seu "
+"literal>, cada <literal>Cat</literal> possui uma referência ao seu "
 "<literal>owner</literal>, que é da classe <literal>Person</literal>. A "
 "classe <literal>Person</literal> é mapeada com um proxy, <literal>lazy=\"true"
-"\"</literal>. Se você iterar sobre todos os Cat's e chamar <literal>getOwner"
+"\"</literal>. Se você interar sobre todos os Cat's e chamar <literal>getOwner"
 "()</literal> em cada, o Hibernate irá por padrão executar 25 comandos "
 "<literal>SELECT()</literal>, para buscar os proxies de owners. Você pode "
 "melhorar esse comportamento especificando um <literal>batch-size</literal> "
-"no mapeamento da classe <literal>Person</literal>:"
+"no mapeamento da classe <literal>Person</literal>: "
 
 #. Tag: programlisting
 #: performance.xml:508
@@ -1154,15 +1153,13 @@
 
 #. Tag: para
 #: performance.xml:510
-#, fuzzy, no-c-format
+#, no-c-format
 msgid "Hibernate will now execute only three queries: the pattern is 10, 10, 5."
-msgstr ""
-"O Hibernate irá executar agora apenas três consultas, buscando por vez, 10, "
-"10 e 5 Person."
+msgstr "O Hibernate irá executar agora apenas três consultas; o padrão é 10, 10, 5."
 
 #. Tag: para
 #: performance.xml:514
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "You can also enable batch fetching of collections. For example, if each "
 "<literal>Person</literal> has a lazy collection of <literal>Cat</literal>s, "
@@ -1174,8 +1171,8 @@
 msgstr ""
 "Você também pode habilitar busca em lote de uma coleção. Por exemplo, se "
 "cada <literal>Person</literal> tem uma coleção preguiçosa de <literal>Cat</"
-"literal>s, e 10 persons estão já carregadas em uma <literal>Session</"
-"literal>, serão gerados 10 <literal>SELECT</literal>s ao se iterar todas as "
+"literal>s e 10 persons estão já carregadas em uma <literal>Session</"
+"literal>, serão gerados 10 <literal>SELECT</literal>s ao se interar todas as "
 "persons, um para cada chamada de <literal>getCats()</literal>. Se você "
 "habilitar busca em lote para a coleção de <literal>cats</literal> no "
 "mapeamento da classe <literal>Person</literal>, o Hibernate pode fazer uma "
@@ -1199,21 +1196,21 @@
 
 #. Tag: para
 #: performance.xml:525
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "With a <literal>batch-size</literal> of 3, Hibernate will load 3, 3, 3, 1 "
 "collections in four <literal>SELECT</literal>s. Again, the value of the "
 "attribute depends on the expected number of uninitialized collections in a "
 "particular <literal>Session</literal>."
 msgstr ""
-"Com um <literal>batch-size</literal> de 8, o Hibernate irá carregar 3, 3, 3, "
+"Com um <literal>batch-size</literal> de 3, o Hibernate irá carregar 3, 3, 3, "
 "1 coleções em 4 <literal>SELECT</literal>s. Novamente, o valor da função "
 "depende do número esperado de coleções não inicializadas em determinada "
 "<literal>Session</literal>."
 
 #. Tag: para
 #: performance.xml:531
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Batch fetching of collections is particularly useful if you have a nested "
 "tree of items, i.e. the typical bill-of-materials pattern. However, a "
@@ -1223,8 +1220,8 @@
 "A busca em lote de coleções é particularmente útil quando você tem uma "
 "árvore encadeada de ítens, ex.: o típico padrão bill-of-materials (Se bem "
 "que um <emphasis>conjunto encadeado</emphasis> ou <emphasis>caminho "
-"materializado </emphasis> pode ser uma opção melhor para árvores com mais "
-"leitura)"
+"materializado</emphasis> pode ser uma opção melhor para árvores com mais "
+"leitura."
 
 #. Tag: title
 #: performance.xml:540
@@ -1234,7 +1231,7 @@
 
 #. Tag: para
 #: performance.xml:542
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "If one lazy collection or single-valued proxy has to be fetched, Hibernate "
 "will load all of them, re-running the original query in a subselect. This "
@@ -1252,7 +1249,7 @@
 
 #. Tag: para
 #: performance.xml:555
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Hibernate3 supports the lazy fetching of individual properties. This "
 "optimization technique is also known as <emphasis>fetch groups</emphasis>. "
@@ -1263,7 +1260,7 @@
 "improved."
 msgstr ""
 "O Hibernate3 suporta a busca lazy de propriedades individuais. Essa técnica "
-"de otimização é também conhecida como <emphasis>fetch groups</emphasis>. "
+"de otimização é também conhecida como <emphasis>grupos de busca</emphasis>. "
 "Veja que esta é mais uma característica de marketing já que na prática, é "
 "mais importante a otimização nas leituras dos registros do que na leitura "
 "das colunas. Porém, carregar apenas algumas propriedades de uma classe pode "
@@ -1308,13 +1305,13 @@
 
 #. Tag: para
 #: performance.xml:571
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Lazy property loading requires buildtime bytecode instrumentation. If your "
 "persistent classes are not enhanced, Hibernate will ignore lazy property "
 "settings and return to immediate fetching."
 msgstr ""
-"A carga de propriedades lazy requer instrumentação de bytecode! Se suas "
+"A carga de propriedades lazy requer instrumentação de bytecode. Se suas "
 "classes persistentes não forem melhoradas, o Hibernate irá ignorar "
 "silenciosamente essa configuração e usará a busca imediata."
 
@@ -1360,27 +1357,27 @@
 
 #. Tag: para
 #: performance.xml:583
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "A different way of avoiding unnecessary column reads, at least for read-only "
 "transactions, is to use the projection features of HQL or Criteria queries. "
 "This avoids the need for buildtime bytecode processing and is certainly a "
 "preferred solution."
 msgstr ""
-"Uma forma diferente (melhor?) de evitar leitura de coluna desnecessária, ao "
+"Uma forma diferente de evitar leitura de coluna desnecessária, ao "
 "menos para transações de somente leitura, deve-se usar os recursos de "
 "projeção do HQL ou consultas por Critério. Isto evita a necessidade de "
 "processamento de bytecode em build-time e é certamente uma melhor solução."
 
 #. Tag: para
 #: performance.xml:590
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "You can force the usual eager fetching of properties using <literal>fetch "
 "all properties</literal> in HQL."
 msgstr ""
-"Você pode forçar a busca antecipada comum de propriedades usando  "
-"<literal>buscar todas as propriedades</literal> in HQL."
+"Você pode forçar a busca antecipada comum de propriedades usando "
+"<literal>buscar todas as propriedades</literal> no HQL."
 
 #. Tag: title
 #: performance.xml:600
@@ -1390,7 +1387,7 @@
 
 #. Tag: para
 #: performance.xml:602
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "A Hibernate <literal>Session</literal> is a transaction-level cache of "
 "persistent data. It is possible to configure a cluster or JVM-level "
@@ -1400,17 +1397,17 @@
 "another application. They can, however, be configured to regularly expire "
 "cached data."
 msgstr ""
-"Uma <literal>Session</literal> do Hibernate é um cachê de nível transacional "
-"de dados persistentes. É possível configurar um cluster ou um cachê de nível "
+"Uma <literal>Session</literal> do Hibernate é um cache de nível transacional "
+"de dados persistentes. É possível configurar um cluster ou um cache de nível "
 "JVM (nível <literal>SessionFactory</literal>) em uma estrutura classe por "
 "classe e coleção por coleção. Você pode até mesmo plugar em um cache em "
 "cluster. Tenha cuidado, pois os caches nunca sabem das mudanças feitas em "
-"armazenamento persistente por um outro aplicativo (embora eles possam ser "
-"configurados para dados em cache vencido regularmente)."
+"armazenamento persistente por um outro aplicativo. No entanto, eles podem ser "
+"configurados para dados em cache vencido regularmente."
 
 #. Tag: para
 #: performance.xml:610
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "You have the option to tell Hibernate which caching implementation to use by "
 "specifying the name of a class that implements <literal>org.hibernate.cache."
@@ -1427,8 +1424,7 @@
 "com um número de integrações construídas com provedores de cache de fonte "
 "aberta (listados abaixo). Além disso, você pode implementar seu próprio e "
 "plugá-lo como mencionado acima. Note que as versões anteriores ao padrão 3.2 "
-"utilizam EhCache como provedor de cache padrão, o que não acontece a partir "
-"do 3.2."
+"utilizam EhCache como provedor de cache padrão. "
 
 #. Tag: title
 #: performance.xml:621
@@ -1593,9 +1589,9 @@
 
 #. Tag: entry
 #: performance.xml:677
-#, fuzzy, no-c-format
+#, no-c-format
 msgid "yes (replication or invalidation)"
-msgstr "sim (invalidação em cluster)"
+msgstr "sim (invalidação ou replicação)"
 
 #. Tag: title
 #: performance.xml:685
@@ -1644,39 +1640,39 @@
 
 #. Tag: para
 #: performance.xml:710
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "<literal>region</literal> (optional: defaults to the class or collection "
 "role name): specifies the name of the second level cache region"
 msgstr ""
-"<literal>região</literal> (opcional, padrão à classe ou nome papel da "
-"coleção) especifica o nome da região do cache de segundo nível"
+"<literal>region</literal> (opcional: padrão à classe ou nome papel da "
+"coleção): especifica o nome da região do cache de segundo nível"
 
 #. Tag: para
 #: performance.xml:717
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "<literal>include</literal> (optional: defaults to <literal>all</literal>) "
 "<literal>non-lazy</literal>: specifies that properties of the entity mapped "
 "with <literal>lazy=\"true\"</literal> cannot be cached when attribute-level "
 "lazy fetching is enabled"
 msgstr ""
-"<literal>inclui</literal> (opcional, padrão para <literal>todos</literal>) "
-"<literal>não-lazy</literal> especifica que a propriedade da entidade mapeada "
-"com  <literal>lazy=\"true\"</literal> pode não estar em cache quando o nível "
+"<literal>include</literal> (opcional: padrão para <literal>all</literal>) "
+"<literal>non-lazy</literal>: especifica que a propriedade da entidade mapeada "
+"com <literal>lazy=\"true\"</literal> pode não estar em cache quando o nível "
 "da função busca lazy for habilitada"
 
 #. Tag: para
 #: performance.xml:727
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Alternatively, you can specify <literal>&lt;class-cache&gt;</literal> and "
 "<literal>&lt;collection-cache&gt;</literal> elements in <literal>hibernate."
 "cfg.xml</literal>."
 msgstr ""
-"De forma alternativa (recomendado?), você poderá especificar os elementos "
+"De forma alternativa, você poderá especificar os elementos "
 "<literal>&lt;class-cache&gt;</literal> e <literal>&lt;collection-cache&gt;</"
-"literal> em<literal>hibernate.cfg.xml</literal>."
+"literal> em <literal>hibernate.cfg.xml</literal>."
 
 #. Tag: para
 #: performance.xml:732
@@ -1696,7 +1692,7 @@
 
 #. Tag: para
 #: performance.xml:741
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "If your application needs to read, but not modify, instances of a persistent "
 "class, a <literal>read-only</literal> cache can be used. This is the "
@@ -1704,9 +1700,7 @@
 "cluster."
 msgstr ""
 "Se sua aplicação precisar ler mas nunca modificar instâncias de uma classe "
-"persistente, pode-se utilizar um cache de <literal>somente leitura</"
-"literal>. Esta é a estratégia de desempenho mais simples e melhor. É também "
-"perfeitamente seguro para uso em um cluster."
+"persistente, pode-se utilizar um cache de <literal>read-only</literal>. Esta é a estratégia de desempenho mais simples e melhor. É também perfeitamente seguro para uso em um cluster."
 
 #. Tag: programlisting
 #: performance.xml:747
@@ -1730,7 +1724,7 @@
 
 #. Tag: para
 #: performance.xml:755
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "If the application needs to update data, a <literal>read-write</literal> "
 "cache might be appropriate. This cache strategy should never be used if "
@@ -1744,8 +1738,7 @@
 "should ensure that the underlying cache implementation supports locking. The "
 "built-in cache providers <emphasis>do not</emphasis> support locking."
 msgstr ""
-"Se a aplicação precisar atualizar dados, um cache de <literal>leitura-"
-"escrita</literal>pode ser mais apropriado. Esta estratégia de cache nunca "
+"Se a aplicação precisar atualizar dados, um cache de <literal>read-write</literal> pode ser mais apropriado. Esta estratégia de cache nunca "
 "deve ser usada se solicitado um nível de isolação de transação serializável. "
 "Se o cache for usado em um ambiente JTA, você deve especificar a propriedade "
 "<literal>hibernate.transaction.manager_lookup_class</literal>, nomeando uma "
@@ -1754,7 +1747,7 @@
 "<literal>Session.close()</literal> ou <literal>Session.disconnect()</"
 "literal> for chamada. Se desejar utilizar esta estratégia em um cluster, "
 "você deve assegurar que a implementação de cache adjacente suporta o "
-"bloqueio. Os provedores de cache built-in <emphasis>não</emphasis> suportam."
+"bloqueio. Os provedores de cache built-in <emphasis>não</emphasis> suportam o bloqueamento."
 
 #. Tag: programlisting
 #: performance.xml:766
@@ -1786,7 +1779,7 @@
 
 #. Tag: para
 #: performance.xml:773
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "If the application only occasionally needs to update data (i.e. if it is "
 "extremely unlikely that two transactions would try to update the same item "
@@ -1800,8 +1793,8 @@
 "Se a aplicação somente precisa atualizar dados ocasionalmente (ou seja, se "
 "for extremamente improvável que as duas transações tentem atualizar o mesmo "
 "ítem simultaneamente) e não for requerido uma isolação de transação estrita, "
-"o uso deum cache de <literal>leitura/escrita não estrita</literal> pode ser "
-"mais apropriado. Se um cache é usado em ambiente JTA, você deve-se "
+"o uso deum cache de <literal>nonstrict-read-write</literal> pode ser "
+"mais apropriado. Se um cache é usado em ambiente JTA, você deverá "
 "especificar o <literal>hibernate.transaction.manager_lookup_class</literal>. "
 "Em outros ambientes, você deve assegurar que a transação está completa "
 "quando a <literal>Session.close()</literal> ou <literal>Session.disconnect()"
@@ -1815,7 +1808,7 @@
 
 #. Tag: para
 #: performance.xml:787
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "The <literal>transactional</literal> cache strategy provides support for "
 "fully transactional cache providers such as JBoss TreeCache. Such a cache "
@@ -1823,34 +1816,32 @@
 "<literal>hibernate.transaction.manager_lookup_class</literal>."
 msgstr ""
 "A estratégia de cache <literal>transactional</literal> provê suporte para "
-"provedores de cache transacional completo como o  JBoss TreeCache. Tal "
+"provedores de cache transacional completo como o JBoss TreeCache. Tal "
 "cache, deve ser usado somente em um ambiente JTA e você deverá especificar o "
 "<literal>hibernate.transaction.manager_lookup_class</literal>."
 
 #. Tag: title
 #: performance.xml:796
-#, fuzzy, no-c-format
+#, no-c-format
 msgid "Cache-provider/concurrency-strategy compatibility"
-msgstr "Suporte de Estratégia de Concorrência de Cache"
+msgstr "Compatibilidade de Estratégia de Concorrência de Cache Provedor"
 
 #. Tag: para
 #: performance.xml:799
-#, fuzzy, no-c-format
+#, no-c-format
 msgid "None of the cache providers support all of the cache concurrency strategies."
 msgstr ""
 "Nenhum provedor de cache suporta todas as estratégias de concorrência de "
-"cache. A seguinte tabela mostra qual provedor é compatível com qual "
-"estratégia de concorrência. "
+"cache. "
 
 #. Tag: para
 #: performance.xml:804
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "The following table shows which providers are compatible with which "
 "concurrency strategies."
 msgstr ""
-"Nenhum provedor de cache suporta todas as estratégias de concorrência de "
-"cache. A seguinte tabela mostra qual provedor é compatível com qual "
+"A seguinte tabela mostra qual provedor é compatível com qual "
 "estratégia de concorrência. "
 
 #. Tag: title
@@ -1891,7 +1882,7 @@
 
 #. Tag: para
 #: performance.xml:879
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Whenever you pass an object to <literal>save()</literal>, <literal>update()</"
 "literal> or <literal>saveOrUpdate()</literal>, and whenever you retrieve an "
@@ -1903,12 +1894,12 @@
 "Quando passar um objeto para <literal>save()</literal>, <literal>update()</"
 "literal> ou <literal>saveOrUpdate()</literal> e quando recuperar um objeto "
 "usando um <literal>load()</literal>, <literal>get()</literal>, <literal>list"
-"()</literal>, <literal>iterate()</literal> or <literal>scroll()</literal>, "
+"()</literal>, <literal>iterate()</literal> ou <literal>scroll()</literal>, "
 "este objeto será adicionado ao cache interno da <literal>Session</literal>."
 
 #. Tag: para
 #: performance.xml:886
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "When <literal>flush()</literal> is subsequently called, the state of that "
 "object will be synchronized with the database. If you do not want this "
@@ -1917,7 +1908,7 @@
 "can be used to remove the object and its collections from the first-level "
 "cache."
 msgstr ""
-"Quando a <literal>limpeza()</literal> for subsequentemente chamada, o estado "
+"Quando o <literal>flush()</literal> for subsequentemente chamado, o estado "
 "deste objeto será sincronizado com o banco de dados. Se você não desejar que "
 "esta sincronização aconteça ou se você estiver processando uma grande "
 "quantidade de objetos e precisar gerenciar a memória de forma eficiente, o "
@@ -1956,13 +1947,13 @@
 
 #. Tag: para
 #: performance.xml:901
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "To evict all objects from the session cache, call <literal>Session.clear()</"
 "literal>"
 msgstr ""
 "Para despejar completamente todos os objetos do cache de Sessão, "
-"chame<literal>Session.clear()</literal>"
+"chame <literal>Session.clear()</literal>"
 
 #. Tag: para
 #: performance.xml:905
@@ -1996,58 +1987,56 @@
 
 #. Tag: para
 #: performance.xml:913
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "The <literal>CacheMode</literal> controls how a particular session interacts "
 "with the second-level cache:"
 msgstr ""
-"O <literal>CacheMode</literal> controla como uma sessão em específico "
-"interage com o cache de segundo nível."
+"O <literal>CacheMode</literal> controla como uma sessão em particular "
+"interage com o cache de segundo nível:"
 
 #. Tag: para
 #: performance.xml:920
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "<literal>CacheMode.NORMAL</literal>: will read items from and write items to "
 "the second-level cache"
 msgstr ""
-"<literal>CacheMode.NORMAL</literal> - lê e escreve ítens ao cache de segundo "
+"<literal>CacheMode.NORMAL</literal> - lê e escreve itens ao cache de segundo "
 "nível."
 
 #. Tag: para
 #: performance.xml:925
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "<literal>CacheMode.GET</literal>: will read items from the second-level "
 "cache. Do not write to the second-level cache except when updating data"
 msgstr ""
-"<literal>CacheMode.GET</literal>, ítens de leitura do cache de segundo "
-"nível, mas não escreve ao cache de segundo nível, exceto quando atualizar "
+"<literal>CacheMode.GET</literal>: itens de leitura do cache de segundo "
+"nível. Não escreve ao cache de segundo nível, exceto quando atualizar "
 "dados."
 
 #. Tag: para
 #: performance.xml:931
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "<literal>CacheMode.PUT</literal>: will write items to the second-level "
 "cache. Do not read from the second-level cache"
-msgstr ""
-"<literal>CacheMode.PUT</literal>, escreve ítens ao cache de segundo nível "
-"mas não lê a partir do cache de segundo nível."
+msgstr "<literal>CacheMode.PUT</literal>: escreve itens ao cache de segundo nível. Não lê a partir do cache de segundo nível."
 
 #. Tag: para
 #: performance.xml:937
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "<literal>CacheMode.REFRESH</literal>: will write items to the second-level "
 "cache. Do not read from the second-level cache. Bypass the effect of "
 "<literal>hibernate.cache.use_minimal_puts</literal> forcing a refresh of the "
 "second-level cache for all items read from the database"
 msgstr ""
-"<literal>CacheMode.REFRESH</literal> , escreve ítem ao cache de segundo "
+"<literal>CacheMode.REFRESH</literal>: escreve itens ao cache de segundo "
 "nível, mas não lê a partir do cache de segundo nível. Passa o efeito de "
 "<literal>hibernate.cache.use_minimal_puts</literal>, forçando uma "
-"atualização do cache de segundo nível para que todos os ítens leiam a partir "
+"atualização do cache de segundo nível para que todos os itens leiam a partir "
 "do banco de dados. "
 
 #. Tag: para
@@ -2074,13 +2063,13 @@
 
 #. Tag: para
 #: performance.xml:952
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "You will need to enable statistics and, optionally, force Hibernate to keep "
 "the cache entries in a more readable format:"
 msgstr ""
-"Você precisará habilitar estatísticas e opcionalmente, forçar o Hibernate a "
-"manter as entradas de cache em um formato mais compreensível:"
+"Você precisará habilitar estatísticas e, opcionalmente, forçar o Hibernate a "
+"manter as entradas de cache em um formato mais compreensível: "
 
 #. Tag: programlisting
 #: performance.xml:957
@@ -2100,7 +2089,7 @@
 
 #. Tag: para
 #: performance.xml:964
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Query result sets can also be cached. This is only useful for queries that "
 "are run frequently with the same parameters. You will first need to enable "
@@ -2108,7 +2097,7 @@
 msgstr ""
 "O conjunto de resultado de consulta pode também estar em cache. Isto é útil, "
 "somente para consultas que são rodadas freqüentemente com os mesmos "
-"parâmetros. Para usar o cache de consulta você deve habilitá-lo primeiro:"
+"parâmetros. Para usar o cache de consulta você deve habilitá-lo primeiro: "
 
 #. Tag: programlisting
 #: performance.xml:969
@@ -2118,7 +2107,7 @@
 
 #. Tag: para
 #: performance.xml:971
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "This setting creates two new cache regions: one holding cached query result "
 "sets (<literal>org.hibernate.cache.StandardQueryCache</literal>), the other "
@@ -2131,16 +2120,16 @@
 "Esta configuração cria duas novas regiões de cache, um conjunto de resultado "
 "de consulta em cache de retenção (<literal>org.hibernate.cache."
 "StandardQueryCache</literal>), os outros carimbos de data e hora "
-"(timestamps) de retenção das atualizações recentes de tabelas consultáveis "
+"timestamps de retenção das atualizações recentes de tabelas consultáveis "
 "(<literal>org.hibernate.cache.UpdateTimestampsCache</literal>). Note que o "
 "cache de consulta não efetua o cache no estado das entidades atuais no "
 "conjunto de resultados. Ele somente efetua o cache de valores de "
 "identificadores e resulta em tipo de valor. Portanto, o cache de consulta "
-"deve sempre ser usado junto ao cache de segundo nível."
+"deve sempre ser usado junto ao cache de segundo nível. "
 
 #. Tag: para
 #: performance.xml:981
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Most queries do not benefit from caching, so by default, queries are not "
 "cached. To enable caching, call <literal>Query.setCacheable(true)</literal>. "
@@ -2151,11 +2140,11 @@
 "eles não estão em cache. Para habilitar o caching, chame <literal>Query."
 "setCacheable(true)</literal>. Esta chamada permite que a consulta procure "
 "por resultados de caches existentes ou adicione seus resultados ao cache "
-"quando for executado. "
+"quando for executado.  "
 
 #. Tag: para
 #: performance.xml:988
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "If you require fine-grained control over query cache expiration policies, "
 "you can specify a named cache region for a particular query by calling "
@@ -2163,7 +2152,7 @@
 msgstr ""
 "Se você solicitar um controle de granulado fino com políticas de validade do "
 "cache de consulta, você poderá especificar uma região de cache nomeada para "
-"uma consulta em particular, chamando<literal>Query.setCacheRegion()</"
+"uma consulta em particular, chamando <literal>Query.setCacheRegion()</"
 "literal>."
 
 #. Tag: programlisting
@@ -2220,7 +2209,7 @@
 "In the previous sections we have covered collections and their applications. "
 "In this section we explore some more issues in relation to collections at "
 "runtime."
-msgstr ""
+msgstr "Nas seções anteriores nós descrevemos as coleções e seus aplicativos. Nesta seção nós exploraremos mais problemas em relação às coleções no período de execução."
 
 #. Tag: title
 #: performance.xml:1017
@@ -2242,15 +2231,15 @@
 
 #. Tag: para
 #: performance.xml:1026
-#, fuzzy, no-c-format
+#, no-c-format
 msgid "one-to-many associations"
-msgstr "Associações um-para-muitos"
+msgstr "Associações um-para-muitos "
 
 #. Tag: para
 #: performance.xml:1029
-#, fuzzy, no-c-format
+#, no-c-format
 msgid "many-to-many associations"
-msgstr "Associações muitos-para-muitos"
+msgstr "Associações muitos-para-muitos "
 
 #. Tag: para
 #: performance.xml:1033
@@ -2290,7 +2279,7 @@
 
 #. Tag: para
 #: performance.xml:1054
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "All indexed collections (maps, lists, and arrays) have a primary key "
 "consisting of the <literal>&lt;key&gt;</literal> and <literal>&lt;index&gt;</"
@@ -2300,14 +2289,14 @@
 msgstr ""
 "Todas as coleções indexadas (mapas, listas, matrizes) possuem uma chave "
 "primária, que consiste em colunas <literal>&lt;key&gt;</literal> e "
-"<literal>&lt;index&gt;</literal>. Neste caso as atualizações de coleção são "
+"<literal>&lt;index&gt;</literal>. Neste caso, as atualizações de coleção são "
 "geralmente muito eficientes. A chave primária pode ser indexada de forma "
 "eficiente e uma linha em particular pode ser localizada de forma eficiente "
-"quando o Hibernate tentar atualizar ou deletá-la."
+"quando o Hibernate tentar atualizar ou deletá-la. "
 
 #. Tag: para
 #: performance.xml:1062
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Sets have a primary key consisting of <literal>&lt;key&gt;</literal> and "
 "element columns. This can be less efficient for some types of collection "
@@ -2326,24 +2315,24 @@
 "indexar uma chave primária complexa de forma tão eficiente. Por um outro "
 "lado, para associações um-para-muitos ou muitos-para-muitos, especialmente "
 "no caso de identificadores sintáticos, é bem provável que seja tão eficiente "
-"quanto. (Nota: se você quiser que o  <literal>SchemaExport</literal> crie "
+"quanto. Se você quiser que o <literal>SchemaExport</literal> crie "
 "para você uma chave primária de um <literal>&lt;set&gt;</literal> você "
-"deverá declarar todas as colunas como <literal>not-null=\"true\"</literal>.)"
+"deverá declarar todas as colunas como <literal>not-null=\"true\"</literal>."
 
 #. Tag: para
 #: performance.xml:1073
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "<literal>&lt;idbag&gt;</literal> mappings define a surrogate key, so they "
 "are efficient to update. In fact, they are the best case."
 msgstr ""
 "Os mapeamentos <literal>&lt;idbag&gt;</literal> definem uma chave "
 "substituta, para que elas sejam sempre muito eficientes ao atualizar. Na "
-"verdade, este é o melhor caso."
+"verdade, este é o melhor caso. "
 
 #. Tag: para
 #: performance.xml:1078
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Bags are the worst case since they permit duplicate element values and, as "
 "they have no index column, no primary key can be defined. Hibernate has no "
@@ -2354,13 +2343,13 @@
 "As Bags são os piores casos. Como uma bag permite duplicar valores de "
 "elementos e não possui coluna de índice, não se deve definir nenhuma chave "
 "primária. O Hibernate não tem como distinguir entre linhas duplicadas. O "
-"Hibernate resolve este problema, removendo completamente (em um "
-"único<literal>DELETE</literal>) e recria a coleção quando mudar. Isto pode "
+"Hibernate resolve este problema, removendo completamente em um "
+"único <literal>DELETE</literal> e recria a coleção quando mudar. Isto pode "
 "ser bastante ineficiente."
 
 #. Tag: para
 #: performance.xml:1086
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "For a one-to-many association, the \"primary key\" may not be the physical "
 "primary key of the database table. Even in this case, the above "
@@ -2369,8 +2358,7 @@
 msgstr ""
 "Note que para uma associação um-para-muitos, a chave primária pode não ser a "
 "chave primária física da tabela do banco de dados, mas mesmo neste caso, a "
-"classificação acima é ainda útil. (Ainda reflete como o Hibernate \"localiza"
-"\" linhas individuais da coleção.)"
+"classificação acima é ainda útil. Isto reflete como o Hibernate \"localiza\" linhas individuais da coleção."
 
 #. Tag: title
 #: performance.xml:1096
@@ -2382,7 +2370,7 @@
 
 #. Tag: para
 #: performance.xml:1098
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "From the discussion above, it should be clear that indexed collections and "
 "sets allow the most efficient operation in terms of adding, removing and "
@@ -2390,11 +2378,11 @@
 msgstr ""
 "A partir da discussão acima, deve ficar claro que as coleções indexadas e "
 "conjuntos (geralmente) permitem uma operação mais eficente em termos de "
-"adição, remoção e atualização de elementos. "
+"adição, remoção e atualização de elementos.  "
 
 #. Tag: para
 #: performance.xml:1104
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "There is, arguably, one more advantage that indexed collections have over "
 "sets for many-to-many associations or collections of values. Because of the "
@@ -2406,16 +2394,16 @@
 msgstr ""
 "Existe ainda, mais uma vantagem, das coleções indexadas sob conjuntos para "
 "associações muitos-para-muitos. Por causa da estrutura de "
-"um<literal>Conjunto</literal>, o Hibernate nunca utiliza o comando "
+"um <literal>Set</literal>, o Hibernate nunca utiliza o comando "
 "<literal>UPDATE</literal> em uma linha quando um elemento é \"modificado\". "
 "As mudanças para o <literal> Conjunto</literal> funcionam sempre através do "
-"comando <literal>INSERT</literal> e <literal>DELETE</literal> (de linhas "
-"individuais). Novamente, esta consideração não se aplica às associações um "
-"para muitos."
+"comando <literal>INSERT</literal> e <literal>DELETE</literal> de linhas "
+"individuais. Novamente, esta consideração não se aplica às associações um "
+"para muitos. "
 
 #. Tag: para
 #: performance.xml:1113
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "After observing that arrays cannot be lazy, you can conclude that lists, "
 "maps and idbags are the most performant (non-inverse) collection types, with "
@@ -2427,11 +2415,11 @@
 "as listas, mapas e bags de id são tipos de coleções com maior desempenho "
 "(não inverso), com conjuntos que não ficam atrás. Espera-se que os conjuntos "
 "sejam um tipo mais comum de coleção nas aplicações Hibernate. Isto porque as "
-"semânticas \"conjunto\" são mais naturais em modelos relacionais."
+"semânticas \"conjunto\" são mais naturais em modelos relacionais. "
 
 #. Tag: para
 #: performance.xml:1121
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "However, in well-designed Hibernate domain models, most collections are in "
 "fact one-to-many associations with <literal>inverse=\"true\"</literal>. For "
@@ -2444,7 +2432,7 @@
 "<literal>inverse=\"true\"</literal>. Para estas associações, a atualização é "
 "manipulada pelo lado muitos-para-um de uma associação e portanto "
 "considerações de desempenho de atualização de coleção simplesmente não se "
-"aplicam a este caso."
+"aplicam a este caso.  "
 
 #. Tag: title
 #: performance.xml:1131
@@ -2454,7 +2442,7 @@
 
 #. Tag: para
 #: performance.xml:1133
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "There is a particular case, however, in which bags, and also lists, are much "
 "more performant than sets. For a collection with <literal>inverse=\"true\"</"
@@ -2465,16 +2453,14 @@
 "literal> must always return true for a bag or <literal>List</literal>. This "
 "can make the following common code much faster:"
 msgstr ""
-"Antes que você rejeite as bags para sempre, existe um caso em particular no "
-"qual as bags (e também as listas) possuem um desempenho muito maior do que "
-"conjuntos. Para uma coleção com <literal>inverse=\"true\"</literal> (o "
-"idioma de relacionamento um-para-um bidirecional padrão, por exemplo) "
+"Existe um caso em particular no qual as bags (e também as listas) possuem um desempenho muito maior do que "
+"conjuntos. Para uma coleção com <literal>inverse=\"true\"</literal>, o "
+"idioma de relacionamento um-para-um bidirecional padrão, por exemplo, "
 "podemos adicionar elementos a uma bag ou uma lista sem precisar inicializar "
-"(buscar) os elementos da bag! Isto acontece porque a <literal>Collection.add"
+"(buscar) os elementos da bag. Isto acontece porque a <literal>Collection.add"
 "()</literal> ou <literal>Collection.addAll()</literal> deve sempre retornar "
-"verdadeira para uma bag ou <literal>List</literal> (ao contrário de um "
-"<literal>Conjunto</literal>). Isto pode fazer que o código comum seguinte "
-"seja muito mais rápido."
+"verdadeira para uma bag ou <literal>List</literal>. Isto pode fazer que o código comum seguinte "
+"seja muito mais rápido:"
 
 #. Tag: programlisting
 #: performance.xml:1143
@@ -2500,7 +2486,7 @@
 
 #. Tag: para
 #: performance.xml:1150
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Deleting collection elements one by one can sometimes be extremely "
 "inefficient. Hibernate knows not to do that in the case of an newly-empty "
@@ -2510,13 +2496,12 @@
 "Às vezes, deletar elementos de coleção um por um pode ser extremamente "
 "ineficiente. O Hibernate não é completamente burro, portanto ele sabe que "
 "não deve fazer isso no caso de uma coleção que tenha sido esvaziada "
-"recentemente (se você chamou<literal>list.clear()</literal>,por exemplo). "
-"Neste caso, o Hibernate irá editar um único<literal>DELETE</literal> e "
-"terminamos!"
+"recentemente (se você chamou <literal>list.clear()</literal>, por exemplo). "
+"Neste caso, o Hibernate irá editar um único <literal>DELETE</literal>."
 
 #. Tag: para
 #: performance.xml:1157
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Suppose you added a single element to a collection of size twenty and then "
 "remove two elements. Hibernate will issue one <literal>INSERT</literal> "
@@ -2525,8 +2510,8 @@
 msgstr ""
 "Vamos supor que tenha adicionado um elemento único à uma coleção de tamanho "
 "vinte e então remove dois elementos. O Hibernate irá editar uma instrução "
-"<literal>INSERT</literal> e duas instruções <literal>DELETE</literal> (a não "
-"ser que a coleção seja uma bag). Isto é certamente desejável."
+"<literal>INSERT</literal> e duas instruções <literal>DELETE</literal>, a não "
+"ser que a coleção seja uma bag. Isto é certamente desejável."
 
 #. Tag: para
 #: performance.xml:1163
@@ -2547,30 +2532,28 @@
 
 #. Tag: para
 #: performance.xml:1173
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "remove the whole collection in one SQL <literal>DELETE</literal> and insert "
 "all five current elements one by one"
 msgstr ""
-"remova toda a coleção (em um SQL<literal>DELETE</literal>) e insira todos os "
-"cinco elementos atuais (um por um)"
+"remova toda a coleção em um SQL <literal>DELETE</literal> e insira todos os "
+"cinco elementos atuais, um por um"
 
 #. Tag: para
 #: performance.xml:1178
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Hibernate cannot know that the second option is probably quicker. It would "
 "probably be undesirable for Hibernate to be that intuitive as such behavior "
 "might confuse database triggers, etc."
 msgstr ""
-"O Hibernate não é inteligente o suficiente para saber que a segunda opção é "
-"provavelmente mais rápida neste caso. ( E seria bom se o Hibernate fosse "
-"inteligente assim, tal comportamento deve confundir o disparo do banco de "
-"dados, etc.)"
+"O Hibernate não sabe que a segunda opção é provavelmente mais rápida neste caso. O Hibernate não deseha saber a opção, uma vez que tal comportamento deve confundir os triggers do banco de "
+"dados, etc."
 
 #. Tag: para
 #: performance.xml:1184
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Fortunately, you can force this behavior (i.e. the second strategy) at any "
 "time by discarding (i.e. dereferencing) the original collection and "
@@ -2579,17 +2562,17 @@
 "Felizmente, você pode forçar este comportamento (ou seja, uma segunda "
 "estratégia) a qualquer momento, descartando (ou seja, desreferenciando) a "
 "coleção original e retornando uma coleção recentemente instanciada com todos "
-"os elementos atuais. Isto, às vezes, pode ser bastante útil e potente."
+"os elementos atuais. "
 
 #. Tag: para
 #: performance.xml:1190
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "One-shot-delete does not apply to collections mapped <literal>inverse=\"true"
 "\"</literal>."
 msgstr ""
-"É claro que, deletar somente uma vez, não se aplica à coleções "
-"mapeadas<literal>inverse=\"true\"</literal>."
+"É claro que, deletar somente uma vez, não se aplica às coleções "
+"mapeadas <literal>inverse=\"true\"</literal>."
 
 #. Tag: title
 #: performance.xml:1199
@@ -2631,7 +2614,7 @@
 
 #. Tag: para
 #: performance.xml:1216
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Hibernate can also use JMX to publish metrics if you enable the "
 "<literal>StatisticsService</literal> MBean. You can enable a single MBean "
@@ -2639,10 +2622,10 @@
 "following code for minimalistic configuration examples:"
 msgstr ""
 "O Hibernate também usa o JMX para publicar métricas se você habilitar o "
-"MBean de<literal>StatisticsService</literal>. Você deve habiliar um MBean "
+"MBean de <literal>StatisticsService</literal>. Você deve habiliar um MBean "
 "único para todas as suas <literal>SessionFactory</literal> ou uma por "
 "factory. Veja o seguinte código para exemplos de configurações "
-"minimalísticos:"
+"minimalísticos: "
 
 #. Tag: programlisting
 #: performance.xml:1223
@@ -2694,13 +2677,13 @@
 
 #. Tag: para
 #: performance.xml:1233
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "You can activate and deactivate the monitoring for a "
 "<literal>SessionFactory</literal>:"
 msgstr ""
 "Você pode (des)ativar o monitoramento para uma <literal>SessionFactory</"
-"literal>"
+"literal>:"
 
 #. Tag: para
 #: performance.xml:1238
@@ -2724,7 +2707,7 @@
 
 #. Tag: para
 #: performance.xml:1252
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Statistics can be reset programmatically using the <literal>clear()</"
 "literal> method. A summary can be sent to a logger (info level) using the "
@@ -2732,7 +2715,7 @@
 msgstr ""
 "As estatísticas podem ser reajsutadas de forma programática, usando o método "
 "<literal>clear()</literal>. Um resumo pode ser enviado para o usuário (nível "
-"de info) usando o método <literal>logSummary()</literal>."
+"de info) usando o método <literal>logSummary()</literal>. "
 
 #. Tag: title
 #: performance.xml:1261
@@ -2742,7 +2725,7 @@
 
 #. Tag: para
 #: performance.xml:1263
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Hibernate provides a number of metrics, from basic information to more "
 "specialized information that is only relevant in certain scenarios. All "
@@ -2752,7 +2735,7 @@
 "O Hibernate oferece um número de métricas, desde informações bem básicas até "
 "especializadas, somente relevantes a certos cenários. Todos os contadores "
 "disponíveis estão descritos na API da interface <literal>Statistics</"
-"literal> em três categorias:"
+"literal>, em três categorias: "
 
 #. Tag: para
 #: performance.xml:1270
@@ -2766,13 +2749,13 @@
 
 #. Tag: para
 #: performance.xml:1276
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Metrics related to the entities, collections, queries, and caches as a whole "
 "(aka global metrics)."
 msgstr ""
 "As métricas relacionadas às entidades, coleções, consultas e caches como um "
-"todo (mais conhecido como métricas globais)."
+"todo (mais conhecido como métricas globais). "
 
 #. Tag: para
 #: performance.xml:1282
@@ -2786,7 +2769,7 @@
 
 #. Tag: para
 #: performance.xml:1289
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "For example, you can check the cache hit, miss, and put ratio of entities, "
 "collections and queries, and the average time a query needs. Be aware that "
@@ -2795,14 +2778,14 @@
 "to 10 seconds."
 msgstr ""
 "Por exemplo, você pode verificar a coincidência de um cache, perder e "
-"colocar  a relação entre as entidades, colações e consultas e tempo médio "
+"colocar a relação entre as entidades, colações e consultas e tempo médio "
 "que uma consulta precisa. Esteja ciente de que o número de milisegundos é "
 "sujeito a aproximação em Java. O Hibernate é preso à precisão do JVM, em "
-"algumas plataformas a precisão chega a ser de 10 segundos."
+"algumas plataformas a precisão chega a ser de 10 segundos. "
 
 #. Tag: para
 #: performance.xml:1296
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Simple getters are used to access the global metrics (i.e. not tied to a "
 "particular entity, collection, cache region, etc.). You can access the "
@@ -2814,7 +2797,7 @@
 "literal> API Javadoc for more information. The following code is a simple "
 "example:"
 msgstr ""
-"Os Getter simples são usados para acessar métricas globais (ou seja, não "
+"Os Getters simples são usados para acessar métricas globais (ou seja, não "
 "presos à uma entidade em particular, coleção, região de cache, etc.) Você "
 "pode acessar as métricas de uma entidade em particular, coleção ou região de "
 "cache através de seu nome e através de sua representação de HQL ou SQL para "
@@ -2822,7 +2805,7 @@
 "<literal>EntityStatistics</literal>, <literal>CollectionStatistics</"
 "literal>, <literal>SecondLevelCacheStatistics</literal>, e "
 "<literal>QueryStatistics</literal> para maiores informações. O seguinte "
-"código mostra um exemplo simples:"
+"código mostra um exemplo simples:  "
 
 #. Tag: programlisting
 #: performance.xml:1306
@@ -2864,7 +2847,7 @@
 
 #. Tag: para
 #: performance.xml:1308
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "You can work on all entities, collections, queries and region caches, by "
 "retrieving the list of names of entities, collections, queries and region "
@@ -2877,5 +2860,5 @@
 "consultas e caches regionais com os seguintes métodos: <literal>getQueries()"
 "</literal>, <literal>getEntityNames()</literal>, "
 "<literal>getCollectionRoleNames()</literal>, e "
-"<literal>getSecondLevelCacheRegionNames()</literal>."
+"<literal>getSecondLevelCacheRegionNames()</literal>. "
 

Modified: projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR/persistent_classes.po
===================================================================
--- projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR/persistent_classes.po	2009-11-04 06:22:41 UTC (rev 95990)
+++ projects/docs/enterprise/5.0/Hibernate/Hibernate_Core/pt-BR/persistent_classes.po	2009-11-04 06:27:18 UTC (rev 95991)
@@ -109,7 +109,7 @@
 "Project-Id-Version: persistent_classes\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n"
 "POT-Creation-Date: 2009-09-15 07:03+0000\n"
-"PO-Revision-Date: 2009-10-30 13:11+1000\n"
+"PO-Revision-Date: 2009-11-04 16:24+1000\n"
 "Last-Translator: \n"
 "Language-Team:  <en at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -125,7 +125,7 @@
 
 #. Tag: para
 #: persistent_classes.xml:31
-#, fuzzy, no-c-format
+#, no-c-format
 msgid ""
 "Persistent classes are classes in an application that implement the entities "
 "of the business problem (e.g. Customer and Order in an E-commerce "
@@ -137,7 +137,7 @@
 "as entidades de problemas de negócios (ex.: Cliente e Pedido em um "
 "aplicativo e-commerce). Nem todas as instâncias de uma classe persistente "
 "estão em estado persistente, uma instância pode, ao invés disso, ser "
-"transiente ou desanexada."
+"transiente ou desanexada. "
 
 #. Tag: para
 #: persistent_classes.xml:38
@@ -1354,6 +1354,132 @@
 "    ...\n"
 "}"
 msgstr ""
+"/**\n"
+" * A very trivial JDK Proxy InvocationHandler implementation where we proxy "
+"an interface as\n"
+" * the domain model and simply store persistent state in an internal Map.  "
+"This is an extremely\n"
+" * trivial example meant only for illustration.\n"
+" */\n"
+"public final class DataProxyHandler implements InvocationHandler {\n"
+"        private String entityName;\n"
+"        private HashMap data = new HashMap();\n"
+"\n"
+"        public DataProxyHandler(String entityName, Serializable id) {\n"
+"                this.entityName = entityName;\n"
+"                data.put( \"Id\", id );\n"
+"        }\n"
+"\n"
+"        public Object invoke(Object proxy, Method method, Object[] args) "
+"throws Throwable {\n"
+"                String methodName = method.getName();\n"
+"                if ( methodName.startsWith( \"set\" ) ) {\n"
+"                        String propertyName = methodName.substring( 3 );\n"
+"                        data.put( propertyName, args[0] );\n"
+"                }\n"
+"                else if ( methodName.startsWith( \"get\" ) ) {\n"
+"                        String propertyName = methodName.substring( 3 );\n"
+"                        return data.get( propertyName );\n"
+"                }\n"
+"                else if ( \"toString\".equals( methodName ) ) {\n"
+"                        return entityName + \"#\" + data.get( \"Id\" );\n"
+"                }\n"
+"                else if ( \"hashCode\".equals( methodName ) ) {\n"
+"                        return new Integer( this.hashCode() );\n"
+"                }\n"
+"                return null;\n"
+"        }\n"
+"\n"
+"        public String getEntityName() {\n"
+"                return entityName;\n"
+"        }\n"
+"\n"
+"        public HashMap getData() {\n"
+"                return data;\n"
+"        }\n"
+"}\n"
+"\n"
+"/**\n"
+" *\n"
+" */\n"
+"public class ProxyHelper {\n"
+"    public static String extractEntityName(Object object) {\n"
+"        // Our custom java.lang.reflect.Proxy instances actually bundle\n"
+"        // their appropriate entity name, so we simply extract it from "
+"there\n"
+"        // if this represents one of our proxies; otherwise, we return null\n"
+"        if ( Proxy.isProxyClass( object.getClass() ) ) {\n"
+"            InvocationHandler handler = Proxy.getInvocationHandler"
+"( object );\n"
+"            if ( DataProxyHandler.class.isAssignableFrom( handler.getClass"
+"() ) ) {\n"
+"                DataProxyHandler myHandler = ( DataProxyHandler ) handler;\n"
+"                return myHandler.getEntityName();\n"
+"            }\n"
+"        }\n"
+"        return null;\n"
+"    }\n"
+"\n"
+"    // various other utility methods ....\n"
+"\n"
+"}\n"
+"\n"
+"/**\n"
+" * The EntityNameResolver implementation.\n"
+" * IMPL NOTE : An EntityNameResolver really defines a strategy for how "
+"entity names should be\n"
+" * resolved.  Since this particular impl can handle resolution for all of "
+"our entities we want to\n"
+" * take advantage of the fact that SessionFactoryImpl keeps these in a Set "
+"so that we only ever\n"
+" * have one instance registered.  Why?  Well, when it comes time to resolve "
+"an entity name,\n"
+" * Hibernate must iterate over all the registered resolvers.  So keeping "
+"that number down\n"
+" * helps that process be as speedy as possible.  Hence the equals and "
+"hashCode impls\n"
+" */\n"
+"public class MyEntityNameResolver implements EntityNameResolver {\n"
+"    public static final MyEntityNameResolver INSTANCE = new "
+"MyEntityNameResolver();\n"
+"\n"
+"    public String resolveEntityName(Object entity) {\n"
+"        return ProxyHelper.extractEntityName( entity );\n"
+"    }\n"
+"\n"
+"    public boolean equals(Object obj) {\n"
+"        return getClass().equals( obj.getClass() );\n"
+"    }\n"
+"\n"
+"    public int hashCode() {\n"
+"        return getClass().hashCode();\n"
+"    }\n"
+"}\n"
+"\n"
+"public class MyEntityTuplizer extends PojoEntityTuplizer {\n"
+"        public MyEntityTuplizer(EntityMetamodel entityMetamodel, "
+"PersistentClass mappedEntity) {\n"
+"                super( entityMetamodel, mappedEntity );\n"
+"        }\n"
+"\n"
+"        public EntityNameResolver[] getEntityNameResolvers() {\n"
+"                return new EntityNameResolver[] { MyEntityNameResolver."
+"INSTANCE };\n"
+"        }\n"
+"\n"
+"    public String determineConcreteSubclassEntityName(Object entityInstance, "
+"SessionFactoryImplementor factory) {\n"
+"        String entityName = ProxyHelper.extractEntityName"
+"( entityInstance );\n"
+"        if ( entityName == null ) {\n"
+"            entityName = super.determineConcreteSubclassEntityName"
+"( entityInstance, factory );\n"
+"        }\n"
+"        return entityName;\n"
+"    }\n"
+"\n"
+"    ...\n"
+"}"
 
 #. Tag: para
 #: persistent_classes.xml:370




More information about the jboss-cvs-commits mailing list