[jboss-cvs] JBossAS SVN: r75296 - projects/docs/enterprise/4.3/Transactions/Programmers_Guide/zh-CN.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Jul 2 03:27:33 EDT 2008


Author: xhuang at jboss.com
Date: 2008-07-02 03:27:33 -0400 (Wed, 02 Jul 2008)
New Revision: 75296

Modified:
   projects/docs/enterprise/4.3/Transactions/Programmers_Guide/zh-CN/Chapter_02.po
Log:
update

Modified: projects/docs/enterprise/4.3/Transactions/Programmers_Guide/zh-CN/Chapter_02.po
===================================================================
--- projects/docs/enterprise/4.3/Transactions/Programmers_Guide/zh-CN/Chapter_02.po	2008-07-02 05:44:06 UTC (rev 75295)
+++ projects/docs/enterprise/4.3/Transactions/Programmers_Guide/zh-CN/Chapter_02.po	2008-07-02 07:27:33 UTC (rev 75296)
@@ -7,7 +7,7 @@
 "Project-Id-Version: JBoss_TS_Programmers_Guide 1.0\n"
 "Report-Msgid-Bugs-To: http://bugs.kde.org\n"
 "POT-Creation-Date: 2008-06-05 22:51+0000\n"
-"PO-Revision-Date: 2008-07-01 21:32+1000\n"
+"PO-Revision-Date: 2008-07-02 17:27+1000\n"
 "Last-Translator: Xi HUANG <xhuang at redhat.com>\n"
 "Language-Team: Chinese Simplified <kde-i18n-doc at lists.kde.org>\n"
 "MIME-Version: 1.0\n"
@@ -358,6 +358,8 @@
 "are pure Java implementations; to access the shared memory and other more "
 "complex object store implementations it is necessary to use native methods."
 msgstr ""
+"和所有 <emphasis>TxCore</emphasis> 的类一样,缺省的 Object Store 也是纯 Java "
+"的实现。要访问共享内存和其他更为复杂的 Object Store 实现,使用 native 方法时必需的。"
 
 #. Tag: para
 #: Chapter_02.xml:66
@@ -375,6 +377,12 @@
 "emphasis> system components as appropriate thus the existence of any shadow "
 "versions of objects in the store are hidden from the programmer."
 msgstr ""
+"所有的 Object Store 都保存并检索 <classname>Input/OutputObjectState</classname> "
+"类的实例。这些实例根据 UID 和它们所代表的对象的类型来命名。读取状态使用 <command>read_committed</command> "
+"操作而写入则使用 <command>write_uncommitted</command> "
+"操作。新的对象状态通常不覆盖旧的对象状态,而是以影子拷贝的方式写入。这些影子拷贝只有在 <command>commit_state</command> "
+"操作被调用时才替换原始的状态。通常,和 Object Store 的所有交互都通过 <emphasis>TxCore</emphasis> "
+"系统组件来执行,因此对于程序员来说,任何对象的影子版本都是隐藏的。"
 
 #. Tag: screen
 #: Chapter_02.xml:68
@@ -398,6 +406,23 @@
 ". . .\n"
 "};"
 msgstr ""
+"public class ObjectStore\n"
+"{\n"
+"public static final int OS_COMMITTED;\n"
+"public static final int OS_UNCOMMITTED;\n"
+"public static final int OS_COMMITTED_HIDDEN;\n"
+"public static final int OS_UNCOMMITTED_HIDDEN;\n"
+"public static final int OS_UNKNOWN;\n"
+"\n"
+"/* The abstract interface */\n"
+"public abstract boolean commit_state (Uid u, String name)\n"
+"throws ObjectStoreException;\n"
+"public abstract InputObjectState read_committed (Uid u, String name)\n"
+"throws ObjectStoreException;\n"
+"public abstract boolean write_uncommitted (Uid u, String name,\n"
+"OutputObjectState os) throws ObjectStoreException;\n"
+". . .\n"
+"};"
 
 #. Tag: para
 #: Chapter_02.xml:70
@@ -419,12 +444,19 @@
 "<literal>com.arjuna.ats.arjuna.objectstore.objectStoreSync</literal> "
 "variable to OFF."
 msgstr ""
+"当事务性对象被提交时,它有必要将某些状态的改变持久化,这样在出现故障时就能够恢复并继续提交或回滚。当使用 <emphasis>Transactional "
+"Objects for Java</emphasis> 时,<emphasis>TxCore</emphasis> 将自动处理这些事情。要确保 ACID "
+"属性,这些状态变化必须在事务可以继续提交之前冲刷至 persistence store "
+"实现里。如果没有这样做的话,应用程序可能假定事务已经提交,而实际上状态修改仍然驻留在操作系统的缓存里,并可能在随后出现主机故障时丢失。在缺省情况下,<em"
+"phasis>TxCore</emphasis> "
+"将确保这样的状态修改被冲刷。然而,这样做会明显地降低应用程序的性能。要阻止事务性对象的状态冲刷,你可以把 <literal>com.arjuna.ats."
+"arjuna.objectstore.objectStoreSync</literal> 变量设为 OFF。"
 
 #. Tag: title
 #: Chapter_02.xml:74
 #, no-c-format
 msgid "Selecting an object store implementation"
-msgstr ""
+msgstr "选择 Object Store 实现"
 
 #. Tag: para
 #: Chapter_02.xml:76
@@ -436,12 +468,15 @@
 "ats.arjuna.objectstore.objectStoreType</literal> property variable) on a per "
 "object basis, and indicates how additional implementations can be provided."
 msgstr ""
+"<emphasis>TxCore</emphasis> 支持几种不同的 Object Store "
+"的实现。附录里描述了这些实现以及如何为每个对象选择和配置实现(使用 <literal>com.arjuna.ats.arjuna.objectstore."
+"objectStoreType</literal> 属性变量),并指出怎样提供其他的实现。"
 
 #. Tag: title
 #: Chapter_02.xml:84
 #, no-c-format
 msgid "StateManager"
-msgstr ""
+msgstr "StateManager"
 
 #. Tag: para
 #: Chapter_02.xml:86
@@ -456,6 +491,10 @@
 "<classname>StateManager</classname> will also propagate these resources "
 "between child transactions and their parents at commit time."
 msgstr ""
+"<emphasis>TxCore</emphasis> 的 <classname>StateManager</classname> "
+"类管理对象的状态并提供用于状态管理目的的对象所需的基本支持机制。<classname>StateManager</classname> "
+"负责创建和注册和事务性对象的持久化和恢复相关的合适资源。如果事务是嵌套的,那么 <classname>StateManager</classname> "
+"也将在提交时在子事务和父事务间传递这些资源。"
 
 #. Tag: para
 #: Chapter_02.xml:88
@@ -480,6 +519,15 @@
 "cannot gain (or lose) recovery capabilities at some arbitrary point during "
 "its lifetime."
 msgstr ""
+"我们假设 <emphasis>TxCore</emphasis> 里的对象有 3 种可能的状态。它可能是可恢复的(recoverable),此时 <"
+"classname>StateManager</classname> 将为这个对象(<classname>"
+"Input/OutputObjectState</classname> "
+"的实例)试图生成并维护合适的对象恢复信息。这样的对象的生存时间不超过创建它的应用程序。对象也可能是可恢复且持久的(recoverable and "
+"persistent),此时它的生存时间将超过创建和访问它的应用程序,所以除了维护恢复信息以"
+"外,<classname>StateManager</classname> 还将在适当时候通过调用 <command>activate</command>"
+"(<command>deactivate</command>)操"
+"作来试图加载(卸载)任何现有的持久性状态。最后,对象可能不具有这些状态中的任何一"
+"种,此时既不会保持恢复信息也不会自动尝试激活/取消激活对象。这个对象属性在构建时选定且不能再改动。因此对象在其生存期间并不能够获得(或丢失)恢复能力。"
 
 #. Tag: screen
 #: Chapter_02.xml:92
@@ -534,6 +582,54 @@
 "    public static final int MULTIPLE;\n"
 "};"
 msgstr ""
+"public class ObjectStatus\n"
+"{\n"
+"    public static final int PASSIVE;\n"
+"    public static final int PASSIVE_NEW;\n"
+"    public static final int ACTIVE;\n"
+"    public static final int ACTIVE_NEW;\n"
+"    public static final int UNKNOWN_STATUS;\n"
+"};\n"
+"\n"
+"public class ObjectType\n"
+"{\n"
+"    public static final int RECOVERABLE;\n"
+"    public static final int ANDPERSISTENT;\n"
+"    public static final int NEITHER;\n"
+"};\n"
+"\n"
+"public abstract class StateManager\n"
+"{\n"
+"    public synchronized boolean activate ();\n"
+"    public synchronized boolean activate (String storeRoot);\n"
+"    public synchronized boolean deactivate ();\n"
+"    public synchronized boolean deactivate (String storeRoot, boolean "
+"commit);\n"
+"    \n"
+"    public synchronized void destroy ();\n"
+"    \n"
+"    public final Uid get_uid ();\n"
+"    \n"
+"    public boolean restore_state (InputObjectState, int ObjectType);\n"
+"    public boolean save_state (OutputObjectState, int ObjectType);\n"
+"    public String type ();\n"
+"    . . .\n"
+"    \n"
+"    protected StateManager ();\n"
+"    protected StateManager (int ObjectType, ObjectName attr);\n"
+"    protected StateManager (Uid uid);\n"
+"    protected StateManager (Uid uid, ObjectName attr);\n"
+"    . . .\n"
+"    \n"
+"    protected final void modified ();\n"
+"    . . .\n"
+"};\n"
+"\n"
+"public class ObjectModel\n"
+"{\n"
+"    public static final int SINGLE;\n"
+"    public static final int MULTIPLE;\n"
+"};"
 
 #. Tag: para
 #: Chapter_02.xml:94




More information about the jboss-cvs-commits mailing list