FrontPage
»
RelationalStorage
»
BrewingIdeas
»
UndoMethod
def undo(self, transaction_id): self._lock_acquire() try: transaction_id = base64.decodestring(transaction_id+"\n") if not TransactionExists (transaction_id): raise UndoError, "Invalid Undo Transaction Id" if TransactionIsNotUndoable (transaction_id): raise UndoError, "Non-Undoable Transaction" serial = self._serial MakeDummyUndoRecords (serial, transaction_id) UndoPopulatedRecords (serial, transaction_id) UndoUnpopulatedRecords (serial, transaction_id) ClearUndoStatus (transaction_id) oids = GetCurrentOids (serial) return oids finally: self._lock_release()