[Zope-Checkins] CVS: Zope3/lib/python/Transaction - IDataManager.py:1.1.2.2

Jim Fulton jim@zope.com
Wed, 13 Feb 2002 18:57:41 -0500


Update of /cvs-repository/Zope3/lib/python/Transaction
In directory cvs.zope.org:/tmp/cvs-serv16518

Modified Files:
      Tag: Zope-3x-branch
	IDataManager.py 
Log Message:
Filed in methods.


=== Zope3/lib/python/Transaction/IDataManager.py 1.1.2.1 => 1.1.2.2 ===
     """
 
-    # This needs to be filled out. :)
-
+    def abort(object, transaction):
+        """Abort changes made to an object in a transaction"""
     
+    def tpc_begin(transaction, subtransaction=0):
+        """Begin two-phase commit of a transaction
+
+        If a non-zero subtransaction flag is provided, then begin a
+        sub-transaction.
+        """
+        
+    def commit(object, transaction):
+        """Commit (tentatively) changes made to an object in a transaction
+
+        This method is called during the first stage of a two-phase commit
+        """
+
+    def tpc_vote(transaction):
+        """Promise to commit a transaction
+
+        This is the last chance to fail. A data manager should have
+        all changes saved in a recoverable fashion.
+        
+        Finishes the first phase of a two-phase commit.
+        """
+
+    def tpc_finish(transaction):
+        """Finish the transaction by permanently saving any tentative changes.
 
+        This *must not fail*.
+        """
+
+    def tpc_abort(transaction):
+        """Abort (rollback) any tentative commits performed in the transaction
+        """
+
+    # XXX subtransaction model is pretty primitive.
+    def abort_sub(transaction):
+        """Abort any sub-transaction changes"""
+
+
+    def commit_sub(transaction):
+        """Commit (tentatively) subtransaction changes
+
+        This method is called during the first stage of a two-phase commit
+        """        
+