示例#1
0
 def undo(self, job_set=taskhandle.NullJobSet()):
     try:
         done = []
         for change in reversed(self.changes):
             change.undo(job_set)
             done.append(change)
     except Exception:
         for change in done:
             change.do()
         raise
示例#2
0
 def do(self, job_set=taskhandle.NullJobSet()):
     try:
         done = []
         for change in self.changes:
             change.do(job_set)
             done.append(change)
         self.time = time.time()
     except Exception:
         for change in done:
             change.undo()
         raise
示例#3
0
 def call(self, job_set=taskhandle.NullJobSet()):
     job_set.started_job(str(self))
     function(self)
     job_set.finished_job()