Beispiel #1
0
 def conflictMissing(self, conflict):
     """
     Conflict missing (Resolved by another one)
     Remove conflict in original object and notify to clients
     """
     conflict.getFirstObject().updateResolved(conflict)
     notifier.conflictUpdate(-1)
Beispiel #2
0
 def conflictMissing(self, conflict):
     """
     Conflict missing (Resolved by another one)
     Remove conflict in original object and notify to clients
     """
     conflict.getFirstObject().updateResolved(conflict)
     notifier.conflictUpdate(-1)
Beispiel #3
0
 def addUpdate(self, old_object, new_object):
     # Returns True if the update was resolved without user interaction
     res = True
     try:
         mergeAction = old_object.addUpdate(new_object)
         if mergeAction:
             if old_object not in self.objects_with_updates:
                 self.objects_with_updates.append(old_object)
             notifier.conflictUpdate(1)
             res = False
     except:
         res = False
         api.devlog("(%s).addUpdate(%s, %s) - failed" % (self, old_object, new_object))
     return res
Beispiel #4
0
 def addUpdate(self, old_object, new_object):
     # Returns True if the update was resolved without user interaction
     res = True
     try:
         mergeAction = old_object.addUpdate(new_object)
         if mergeAction:
             if old_object not in self.objects_with_updates:
                 self.objects_with_updates.append(old_object)
             notifier.conflictUpdate(1)
             res = False
     except:
         res = False
         api.devlog("(%s).addUpdate(%s, %s) - failed" %
                    (self, old_object, new_object))
     return res
Beispiel #5
0
 def addUpdate(self, old_object, new_object, command_id):
     # Returns True if the update was resolved without user interaction
     try:
         mergeAction = old_object.addUpdate(new_object, command_id)
         if mergeAction:
             if old_object not in self.objects_with_updates:
                 self.objects_with_updates.append(old_object)
             notifier.conflictUpdate(1)
             return False
     except Exception as ex:
         api.devlog("(%s).addUpdate(%s, %s) - failed" %
                    (self, old_object, new_object))
         return False
     self.mappers_manager.update(old_object, command_id)
     notifier.editHost(old_object)
     return True
Beispiel #6
0
 def addUpdate(self, old_object, new_object, command_id):
     # Returns True if the update was resolved without user interaction
     try:
         mergeAction = old_object.addUpdate(new_object, command_id)
         if mergeAction:
             if old_object not in self.objects_with_updates:
                 self.objects_with_updates.append(old_object)
             notifier.conflictUpdate(1)
             return False
     except Exception as ex:
         api.devlog("(%s).addUpdate(%s, %s) - failed" %
                    (self, old_object, new_object))
         return False
     self.mappers_manager.update(old_object, command_id)
     notifier.editHost(old_object)
     return True
Beispiel #7
0
    def resolveConflict(self, conflict, kwargs):
        if self.__edit(conflict.getFirstObject(), **kwargs):
            conflict.getFirstObject().updateResolved(conflict)
            if conflict.getModelObjectType() == "Interface":
                ipv4 = kwargs['ipv4']
                ipv6 = kwargs['ipv6']
                hostnames = kwargs['hostnames']

                if not ipv4['address'] in ["0.0.0.0", None]:
                    self.treeWordsTries.removeWord(ipv4['address'])
                    self.treeWordsTries.addWord(ipv4['address'])

                if not ipv6['address'] in ["0000:0000:0000:0000:0000:0000:0000:0000", None]:
                    self.treeWordsTries.removeWord(ipv6['address'])
                    self.treeWordsTries.addWord(ipv6['address'])

                for h in hostnames:
                    if h is not None:
                        self.treeWordsTries.removeWord(h)
                        self.treeWordsTries.addWord(h)

            notifier.conflictUpdate(-1)
Beispiel #8
0
    def resolveConflict(self, conflict, kwargs):
        if self.__edit(conflict.getFirstObject(), **kwargs):
            conflict.getFirstObject().updateResolved(conflict)
            if conflict.getModelObjectType() == "Interface":
                ipv4 = kwargs['ipv4']
                ipv6 = kwargs['ipv6']
                hostnames = kwargs['hostnames']

                if not ipv4['address'] in ["0.0.0.0", None]:
                    self.treeWordsTries.removeWord(ipv4['address'])
                    self.treeWordsTries.addWord(ipv4['address'])

                if not ipv6['address'] in [
                        "0000:0000:0000:0000:0000:0000:0000:0000", None
                ]:
                    self.treeWordsTries.removeWord(ipv6['address'])
                    self.treeWordsTries.addWord(ipv6['address'])

                for h in hostnames:
                    if h is not None:
                        self.treeWordsTries.removeWord(h)
                        self.treeWordsTries.addWord(h)

            notifier.conflictUpdate(-1)
Beispiel #9
0
 def removeConflictsByObject(self, obj):
     if obj in self.objects_with_updates:
         self.objects_with_updates.remove(obj)
     notifier.conflictUpdate(-len(obj.getUpdates()))
Beispiel #10
0
 def resolveConflict(self, conflict, kwargs):
     if self.__edit(conflict.getFirstObject(), **kwargs):
         conflict.getFirstObject().updateResolved(conflict)
         notifier.conflictUpdate(-1)
Beispiel #11
0
 def removeConflictsByObject(self, obj):
     if obj in self.objects_with_updates:
         self.objects_with_updates.remove(obj)
     notifier.conflictUpdate(-len(obj.getUpdates()))
Beispiel #12
0
 def resolveConflict(self, conflict, kwargs):
     if self.__edit(conflict.getFirstObject(), **kwargs):
         conflict.getFirstObject().updateResolved(conflict)
         notifier.conflictUpdate(-1)