예제 #1
0
    def _checkDeviceExists(self, deviceName, performanceMonitor, ip):

        if ip:
            mon = self.getDmdRoot('Monitors').getPerformanceMonitor(
                performanceMonitor)
            netroot = mon.getNetworkRoot()
            ipobj = netroot.findIp(ip)
            if ipobj:
                dev = ipobj.device()
                if dev:
                    raise DeviceExistsError(
                        "Ip %s exists on %s" % (ip, dev.id), dev)

        if deviceName:
            try:
                dev = self.getDmdRoot('Devices').findDeviceByIdExact(
                    deviceName)
            except Exception as ex:
                pass
            else:
                if dev:
                    raise DeviceExistsError(
                        "Device %s already exists" % deviceName, dev)

        if ip:
            dev = mon.findDevice(ip)
            if dev:
                raise DeviceExistsError("Manage IP %s already exists" % ip,
                                        dev)
        return deviceName, ip
예제 #2
0
 def _checkDeviceExists(self, deviceName, performanceMonitor, ip):
     if deviceName:
         try:
             dev = self.getDmdRoot('Devices').findDeviceByIdExact(deviceName)
         except Exception:
             pass
         else: 
             if dev:
                 raise DeviceExistsError("Device %s already exists" %
                                         deviceName, dev)
             
     if ip:
         mon = self.getDmdRoot('Monitors').getPerformanceMonitor(performanceMonitor)
         dev = mon.findDevice(ip)
         if dev:
             raise DeviceExistsError("Manage IP %s already exists" % ip, dev)
     return deviceName, ip