def sync(self, lists): self.diskChanges = ChangeMonitor() self.conflictChanges = ChangeMonitor() self.notifier = AbstractNotifier.getSimple() self.memMap = dict() self.memOwnerMap = dict() self.diskMap = dict() self.diskOwnerMap = dict() for devGUID, changes in self._allChanges.items(): if devGUID == self._monitor.guid(): self.diskChanges = changes break self._allChanges[self._monitor.guid()] = self._monitor for memList, diskList in lists: self.mergeObjects(memList, diskList) # Cleanup monitor self._monitor.empty() for memList, diskList in lists: for obj in self.allObjects(memList.rootItems()): self._monitor.resetChanges(obj) # Merge conflict changes for devGUID, changes in self._allChanges.items(): if devGUID != self._monitor.guid(): changes.merge(self.conflictChanges)
def setUp(self): AbstractNotifier.disableNotifications()