From 9f7415f17643437f14d887e89fa1ce15c26d37c8 Mon Sep 17 00:00:00 2001 From: Sapan Bhatia Date: Wed, 30 Apr 2014 00:52:32 -0400 Subject: [PATCH] Execute deletors and purge record. --- planetstack/observer/syncstep.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/planetstack/observer/syncstep.py b/planetstack/observer/syncstep.py index a52302d..a43be36 100644 --- a/planetstack/observer/syncstep.py +++ b/planetstack/observer/syncstep.py @@ -53,16 +53,20 @@ class SyncStep: if (peer_object.pk==failed.pk): raise FailedDependency - def call(self, failed=[]): - pending = self.fetch_pending() + def call(self, failed=[], deletion=False): + pending = self.fetch_pending(deletion) for o in pending: try: for f in failed: self.check_dependencies(o,f) # Raises exception if failed - self.sync_record(o) - o.enacted = datetime.now() # Is this the same timezone? XXX - o.backend_status = "OK" - o.save(update_fields=['enacted']) + if (deletion): + self.delete_record(o) + o.delete(purge=True) + else: + self.sync_record(o) + o.enacted = datetime.now() # Is this the same timezone? XXX + o.backend_status = "OK" + o.save(update_fields=['enacted']) except Exception,e: try: o.backend_status = self.error_map.map(str(e)) -- 2.47.0