[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r7866 - trunk/gnue-common/src/datasources/drivers/Base
From: |
jamest |
Subject: |
[gnue] r7866 - trunk/gnue-common/src/datasources/drivers/Base |
Date: |
Wed, 17 Aug 2005 19:32:14 -0500 (CDT) |
Author: jamest
Date: 2005-08-17 19:32:12 -0500 (Wed, 17 Aug 2005)
New Revision: 7866
Modified:
trunk/gnue-common/src/datasources/drivers/Base/RecordSet.py
Log:
added undelete to record sets
Modified: trunk/gnue-common/src/datasources/drivers/Base/RecordSet.py
===================================================================
--- trunk/gnue-common/src/datasources/drivers/Base/RecordSet.py 2005-08-16
01:54:42 UTC (rev 7865)
+++ trunk/gnue-common/src/datasources/drivers/Base/RecordSet.py 2005-08-18
00:32:12 UTC (rev 7866)
@@ -140,6 +140,7 @@
# New recs: 'empty' -(__setitem__)-> 'inserted' -(delete)-> 'void'
# Existing recs: 'clean' -(__setitem__)-> 'modified' -(delete)-> 'deleted'
self.__status = 'clean'
+ self.__preDeleteStatus = None
# The field values
self.__fields = {}
@@ -362,11 +363,33 @@
raise Exceptions.ReadOnlyDeleteError
if self.__status in ['empty', 'inserted']:
+ self.__preDeleteStatus = self.__status
self.__status = 'void'
elif self.__status in ['clean', 'modified']:
+ self.__preDeleteStatus = self.__status
self.__status = 'deleted'
+ # ---------------------------------------------------------------------------
+ # Remove the delete mark from the record
+ # ---------------------------------------------------------------------------
+ def undelete (self):
+ """
+ Remove the delete mark from the record
+
+ The record is restored to the status it had prior to being marked for
+ delete.
+
+ @raise Exceptions.ReadOnlyDeleteError: if the RecordSet is read only.
+ """
+
+ if self.__readonly:
+ raise Exceptions.ReadOnlyDeleteError
+
+ assert self.__status in ['void','deleted']
+ self.__status = self.__preDeleteStatus
+ self.__preDeleteStatus = None
+
# ---------------------------------------------------------------------------
# Call backend code
# ---------------------------------------------------------------------------
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r7866 - trunk/gnue-common/src/datasources/drivers/Base,
jamest <=